💔 Pint is now retired. It's sad to see one of my own projects to go to the history books, but maybe it's our memories with Pint that never goes away. Thank you for all the support of this project and the friends we've made along the way.
pint is a theming engine that allows you to theme your github experience.
- Complete control of personalisation of every element.
- With the right settings, you can also achieve light theme too.
- Quickly paint groups of colors with the Group Painter.
- Quickly paint the entire site with the Update All button.
- Individual control of every possible element (change the color of any individual element without affecting the rest)
- Suggest colors that match the color you picked.
- Custom CSS to modify each button to each div just the way you like it.
- Free and Open-source and will always be.
you can install this extension via the chrome web store or manually.
- grab the latest release here
- open it using chrome
- grab the latest release here
- unzip into a directory
- turn on developer mode
- load unpacked extension
- load the build folder
- clone this repository
- run
yarn build
- open extension settings in chrome/brave/chromium
- turn on developer mode
- load unpacked extension
- load the build folder
please check issues for planned additions, feature requests, bugs and more information.
alternatively, you can also open a new issue to add to it!
💡 I am still looking for ways to better implement this! if you have any idea, please open an issue or create a pull request here
The old implementation used a setTimeout()
function, however the delay makes the project look like garbage as you can see the original colors before seeing your palette applied. The new implementation simply throws the entire css of github and unsets it while hiding the entire html making github look like an empty page until your palette gets loaded. Slight issue though, a flicker comes from time to time but it isn't noticable.
Documentation is planned to debut on fuwadocs, however it is still in progress and is quite low on the priority queue.
contributions are welcome ❤️. however, please do keep in mind that this is a very early project and things are bound to be messy. while code quality is my top priority, i'm implementing it as i go (which is a bit slow since I'm porting this myself to typescript) and would appreciate help regarding it so we could learn more from it too.