🎨 Making Long Coding Sessions More Pleasant β€” The Story Behind Harmonia Theme



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