diff --git a/README.md b/README.md
index dbab06b..fdc2a51 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,94 @@
-# labylib-chattycape
\ No newline at end of file
+
+
+# Chattycape
+
+This labylib extension updates your LabyMod cape with tags from Minecraft chat.
+
+* [Get Started](#get-started)
+* [Default Behavior](#default-behavior)
+* [Custom Render Endpoint](#custom-render-endpoint)
+* [Contribute](#contribute)
+
+### [List of supported servers OOTB](https://github.com/VictorWesterlund/chattycape/wiki/Default-endpoint:-Supported-servers)
+
+## Get Started
+
+### IMPORTANT:
+Chattycape **overwrites your current LabyMod cape**; so make sure to save it before you begin.
+
+1. Login and open the [LabyMod Dashboard](https://www.labymod.net/dashboard)
+2. Under the "YOUR COSMETICS" section, click the tiny image of your cape
+
+3. Right-click the image and select "Save image as.."
+*It's called the same in other major browsers. (Screenshot of Chrome)*
+
+
+### Installation
+
+1. [Download the latest version of Chattycape](https://github.com/VictorWesterlund/chattycape/releases)
+2. Download and install the latest version of [Python 3](https://www.python.org/downloads/) for your architecture
+3. Install [`labylib`](https://pypi.org/project/labylib/) with [`pip`](https://pip.pypa.io/en/stable/)
+```bash
+$ python3 -m pip install labylib
+```
+*or if that doesn't work..*
+```bash
+$ pip3 install labylib
+```
+
+### Usage
+
+1. Run `start.py` with `python3` (not as root)
+```bash
+$ python3 start.py
+```
+2. Chattycape CLI will now ask you to provide additonal details.
+
+*and here's an explanation of them all in order:*
+| Input | Description |
+|--|--|
+| `Path to your '.minecraft'-folder:` | _Only appears if your Minecraft-installation couldn't be located automatically._
Enter a full (absolute) path to your `.minecraft`-folder. Example: "C://Users/VicW/AppData/Roaming/.minecraft"
+| `Cape render endpoint [https://api.victorwesterlund.com/chattycape]:` | Paste a custom render enpoint URL here, or press enter to use the default.
+| `My Minecraft in-game name (Case Sensitive) [Don't exclude me]:` | Enter your Minecraft IGN to exclude yourself from tagging or press enter to allow messages from yourself
+| `PHPSESSID cookie:` | [Here's what it is and where to find it](https://github.com/VictorWesterlund/labylib/wiki/Find-your-PHPSESSID)
+
+3. That's it. You should now see this at the end of your terminal:
+
+
+4. *When you want exit:* Press ⏎ Enter / ⏎ Return to close
+
+## Default Behavior
+
+### [List of supported servers OOTB](https://github.com/VictorWesterlund/chattycape/wiki/Default-endpoint:-Supported-servers)
+
+If you start Chattycape with the default render endpoint; `https://api.victorwesterlund.com/chattycape` - your cape will update every **15 seconds** (limit) with a graphic of the player **avatar, name and tag** (usually "rank") who last said something in public chat (See collage at the start of this document). It only works on a handful of servers at the moment, more can be added in the future.
+
+## Custom Render Endpoint
+
+Chattycape works best when creative people like yourself come up with their own templates!
+
+Chattycape CLI prompts the user upon every start, if they want to use a custom render endpoint. What this means is that you could easily create your own "texture generator" in whatever language you want, as long as the output is a type `image/png` and satisfies LabyMod's sprite layout:
+
+
+* Chattycape makes a request to the endpoint every **15 seconds** (limit) with the URLParams `server`, `username` and `tag`.
+*Example from default endpoint:*
+```text
+https://api.victorwesterlund.com/chattycape?server=us.mineplex.com&username=VicW&tag=immortal
+```
+| URLParam | Value |
+|--|--|
+| `server` | IP/Hostname of current server.
+| `username` | Case-Sensitive string of Minecraft IGN.
+| `tag` | String typecasted to lowercase containing a filtered tag.
*Default behavior: Extracts player rank on supported servers.*
+
+* URLParam value will be assigned [`None`](https://docs.python.org/3/library/constants.html#None) for falsy conditions. This includes if a player is unranked (`tag` not found)
+
+## Contribute
+
+If you find any bugs or would like to suggest features, please submit it as an [Issue](https://github.com/VictorWesterlund/chattycape/issues).
+
+Pull requests to this repo are more than welcome!
+
+## License
+
+[GNU General Public License v2.0](https://github.com/VictorWesterlund/chattycape/blob/master/LICENSE)