This content originally appeared on DEV Community and was authored by AgustΓn RodrΓguez
A good theme isnβt just a color palette β itβs a tool to protect your focus, reduce fatigue, and make your editor feel like home.
Why build a theme?
Iβve always enjoyed fine-tuning my development environment β from terminal fonts to keyboard shortcuts. But I could never quite settle on a theme that felt truly coherent, balanced, and comfortable for long hours of work.
So I decided to try something: build my own Visual Studio Code theme.
Not as a designer, but as a developer β out of curiosity, to learn, and to see how much impact a well-crafted theme could really have.
Dark, soft, and focused β thatβs Harmonia
From the start, Harmonia had a clear goal: to be a dark, soft, visually consistent theme, especially tailored for web developers.
I focused on the languages and file types I use the most: PHP, JavaScript (and friends like TypeScript and JSX), JSON, config files, Docker, Apache, Nginx, and log files.
The idea was to highlight what matters without visual noise. A theme that feels calm and lets your code breathe.
The color decisions
Instead of choosing flashy or high-contrast colors, I took a more subtle approach:
β’ Soft yet deep background: dark enough to reduce eye strain, but not harsh black.
β’ Readable, rich foreground: avoiding pure white or washed-out grays.
β’ Syntax colors with character β not chaos: strong enough to be useful, but not overwhelming.
Each color was tested and adjusted to feel consistent across different languages and syntaxes, without breaking the harmony of the overall palette.
Why colors matter
We spend countless hours looking at our editors. A bad theme can be a constant source of visual fatigue, even if you donβt realize it.
A well-balanced color scheme can help you:
β’ stay focused longer
β’ avoid headaches or eye strain
β’ actually enjoy the experience of coding a bit more
In my opinion, a theme is part of developer ergonomics. Just like a good chair or a calibrated monitor. You donβt notice the value β until you use one thatβs actually well made.
What I learned along the way
Creating a theme is more technical than it might seem. I learned:
β’ how VS Code token scopes work
β’ how to group styles across languages and file types
β’ how to test palettes while keeping consistency
β’ how to package and publish to the VS Code Marketplace
β’ how to generate proper previews for other users to see what you see
It wasnβt hard β but it was detail-heavy.
And that made it fun.
About updates
I work full-time, so updates may not come frequently β but Iβll continue improving Harmonia little by little, especially around the languages and tools I use most in web development.
That includes PHP, JS/TS, JSON, configs, Dockerfiles, and log files.
If time allows, Iβd love to expand support for other languages and improve the themeβs scope coverage even more.
Where to find it
Harmonia Theme is available now on the Visual Studio Code Marketplace.
Direct link to the extension
Screenshots and changelog on GitHub
Thanks for reading
This was a small side project β but one that brought me a lot of satisfaction.
If it helps even one more developer feel a bit more comfortable during a long coding session, it was totally worth it.
And if you try it β Iβd love to hear what you think.
Cover image credit: Pankaj Patel, via Unsplash
This content originally appeared on DEV Community and was authored by AgustΓn RodrΓguez