Over the past few months I’ve been working on a side project called Icarus: a Windows code editor written entirely in C.
The idea came from a pretty simple frustration: most modern editors feel heavy. They’re powerful, but they take time to start, pull in a lot of dependencies, and often feel like total HELL when working on huge codebases.
I wanted something that starts instantly, stays out of the way, and feels closer to the system it runs on.
From the start, I set a few clear constraints:
Instant startup (no splash screens, no background services)
Very small footprint (single EXE)
Portable (no installer, no dependencies)
Native Windows UI (pure Win32, no Electron or web tech)
I chose C mostly for control and simplicity. There’s no runtime to ship, no GC pauses, and no hidden work happening behind the scenes. What the program does is what I wrote.
Icarus is intentionally minimal, but it already supports:
Syntax highlighting
Multiple tabs and split views
Project-based file navigation
Fast text rendering and scrolling
There’s no plugin system, and no AI features. If I don’t personally need something for everyday coding, it probably doesn’t belong in the editor.
A few things stood out while building this:
Startup time matters more than people think. When an editor opens instantly, it changes how often you use it.
Writing everything yourself forces better decisions. You can’t hide behind libraries.
Minimalism isn’t about removing features — it’s about being intentional with the ones you keep.
I just released Icarus v1.0. It’s Windows-only and available as a portable executable. Right now I’m mainly looking for feedback, bug reports, and ideas that fit the lightweight philosophy.
If you enjoy small, fast tools or you’re curious about native Windows development, I’d love to hear your thoughts.
Project page: Gumroad Link
Happy to answer questions about the implementation, C vs C++, or anything else.
Top comments (0)