gitmyhub

themer

TypeScript ★ 5.8k updated 7d ago

🎨 themer takes a set of colors and outputs themes for your apps (editors, terminals, wallpapers, and more).

A color theme generator that takes a single palette and outputs matching themes for your code editor, terminal, wallpaper, and other tools all at once, keeping your entire development environment visually consistent with no manual per-app configuration.

TypeScriptNode.jsnpmsetup: easycomplexity 2/5

Themer is a tool that generates matching color themes for your entire development setup from a single palette of colors. You provide a set of colors, and it outputs ready-to-use theme files for code editors, terminals, and desktop wallpapers, all sharing the same color scheme. The goal is to keep your whole environment visually consistent without manually adjusting each application separately.

There are three ways to use it. The web app at themer.dev provides an interactive interface where you can preview colors in real time and download theme files immediately. The command-line version lets you run it from a terminal and integrate it with a dotfiles setup so themes are rebuilt automatically whenever you update your colors. There is also a JavaScript programming interface for developers who want to generate themes inside their own scripts.

The tool supports a large number of target applications out of the box, including Vim, VS Code, Hyper, iTerm, Windows Terminal, Slack, Alfred, and several others, plus multiple wallpaper styles in different visual patterns. It also comes with a collection of built-in color sets and can import colors from base16 scheme files, a widely used color format in the developer community.

If none of the built-in options match what you want, you can write custom color sets or templates following a defined structure the README describes. Custom files can be passed to the command line just like the built-in ones.

The web UI is the easiest starting point and requires no installation. The command-line version requires basic familiarity with running terminal commands and a JavaScript package manager such as npm.

Where it fits