### **Table of Contents** - [Forking Monkeytype](#forking-monkeytype) - [Creating Themes](#creating-themes) - [Committing Themes](#committing-themes) - [Theme Guidelines](#theme-guidelines) ### Forking Monkeytype First you will have to make a personal copy of the Monkeytype repository, also known as "forking". Go to the [Monkeytype repo](https://github.com/Miodec/monkeytype/) and then click the "fork" button. Screenshot showing location of the fork button on GitHub. ## Creating Themes After you have forked the repository you can now add your theme. Create a CSS file in `./frontend/static/themes/`. Call it whatever you want but make sure that it is all lowercase and replace spaces with underscores. It should look something like this: `theme_name.css`. Then add this code to your file: ``` :root { --bg-color: #ffffff; --main-color: #ffffff; --caret-color: #ffffff; --sub-color: #ffffff; --sub-alt-color: #ffffff; --text-color: #ffffff; --error-color: #ffffff; --error-extra-color: #ffffff; --colorful-error-color: #ffffff; --colorful-error-extra-color: #ffffff; } ``` Here is an image showing what all the properties correspond to: Screenshot showing the page elements controlled by each color property Change the corresponding hex codes to create your theme. Then, go to `./frontend/static/themes/_list.json` and add the following code to the very end of the file (inside the square brackets): ``` ,{ "name": "theme_name", "bgColor": "#ffffff", "mainColor": "#ffffff" } ``` Make sure the name you put matches the name of the file you created (without the `.css` file extension). Add the text color and background color of your theme to their respective fields. ### Committing Themes Once you have created your theme(s), you now need to create a pull request to the main Monkeytype repository. Go to the branch where you created your languages on GitHub. Then make sure your branch is up to date. Once it is up to date, click "contribute". Update branch: Screenshot showing how to update the fork to match the main Monkeytype repository Create a pull request: Screenshot showing how to create a pull request to the main Monkeytype repository Add some screenshots of your theme to the pull request. Click "create pull request" and if it gets approved then your new theme is availabe on Monkeytype for everyone to enjoy. ## Theme Guidelines Make sure your theme follows the theme guidelines. [Theme guidelines](https://github.com/Miodec/monkeytype/blob/master/CONTRIBUTING.md#theme-guidelines)