Skip to main content

← Back to projects

Text Editor in C++

WIP

A from-scratch text editor in C++ — partly a tool, mostly an excuse to deeply understand buffer data structures, raw input handling, and how editors stay responsive under load.

Role
Solo developer
Timeline
2024 – present
Stack
  • C++
  • Performance
  • Fundamentals
  • Personal Project

The problem

Editors are one of the tools I rely on every day, but my mental model of them stopped at "there's a buffer somewhere." I wanted to fix that.

The approach

I'm building it incrementally — first a minimal terminal-mode editor with a gap buffer, then layering on richer features (undo stack, search, syntax highlighting). I keep the dependencies tiny so every layer of the stack is mine to understand.

Implementation highlights

  • Gap-buffer-backed text storage with O(1) local edits.
  • Custom input handling rather than relying on a UI framework.
  • Profiling-driven; performance work is part of the project, not an afterthought.

Outcome & lessons

Still in flight. Ongoing notes from the project will land on the blog as I add features and run into interesting performance trade-offs.


Want to chat about this work, collaborate, or just say hi? Reach out.