Turbokod: a retro TUI+macOS IDE

Code at: GitHub - boxed/TurboKod: Experimental IDE inspired by TurboC++ 3 · GitHub

I’ve used Claude a TON to build this, I freely admit. It started out as an experiment on how good Claude was at porting the C++ codebase for TurboVision to Mojo (fairly good), and then if I could build a simple editor, then I sort of got carried away and wondered if I could replace my daily driver PyCharm.

I’m now on ~4 days of using this as my daily driver, so it’s going well. For Django development I did have to make my own LSP with Django special features too: GitHub - boxed/iommi_lsp · GitHub

Respect, great work and goals.
I’m both glad and amazed that you’re tackling theses two goals in mojo :mojo: :

  • Ui
  • Code editor

Keep pushing ! :tada:

Few questions:
Any early hint for what you’d like the ide and the ui to become ?
(You did mention it started as exploration, and now its becoming more useful)
(Do you intend to continue building theses so they become widely used)


The code-editor

Just tried the editor and it is genuinly neat!

It have an cool and useful source-control pannel :shuffle_tracks_button: ,
from where to do the expected things (stage, commit, amend, more).

It even have some theming with popular color themes :artist_palette: .

Few questions:
Any plan to decouple keyboard shortcuts ? (reassign or basic vim-motions)
Any plan for an plugin system ? (Like in neovim)

I’d love to have my ide in mojo :D, since i program in mojo.

There is also an opportunity to create an LLM integration layer in the app.
(Since it has both UI and Editor capabilities in the same unified interface/mojo world)

i’ll just explore the source code for an while, using the tool :smiley: .

I like the look, but I might add options to make it look more macOS native in that native mode at some point. For the TUI mode it does still need to keep a retro look to be useful I think.

The keyboard bindings is something I’ve thought about yea. It should be easy enough to add vi mode for example. We’ll see. For now I’m just going the macOS-intellij path because that’s where I’m moving from.

I think I’d avoid plugins. Maybe it’s better for people to just use this as a base for an IDE and use Claude to customize it to their particular needs.