Termisu v0.5.0

Hey folks :waving_hand:

It’s been a while since I posted about Termisu. Looking back, the last forum announcement was for v0.0.2.

For anyone who missed the earlier post: Termisu is a small Crystal library for building terminal UIs with a focus on simplicity, portability, and developer experience. It remains intentionally small and Crystal first, with zero runtime dependencies beyond the standard library and broad support across *nix systems.

Today, we’re at v0.5.0, and the project has grown considerably.

Since v0.0.2, Termisu has gained:

  • A significantly more mature rendering and event system

  • Better keyboard and mouse handling

  • Resize, timer, tick, and mode change events

  • Enhanced keyboard protocol support

  • More robust terminal state management

  • High precision system timers for animation loops

  • A public C FFI layer

  • Initial TypeScript and Bun bindings via @termisu/core

  • A dedicated documentation site at termisu.io

  • Substantially expanded test coverage

  • Improved CI, release automation, and developer tooling

I’d also like to give a huge thank you to @wuestenfee (not sure if they are on the forum) and @hahwul for their contributions and help improving the project. Open source is always better when people show up and lend a hand :heart:

We’re still pre 1.0 and there’s plenty left to do, but seeing how far the project has come since v0.0.2 has been incredibly rewarding.

As always, feedback, bug reports, API suggestions, and contributions are welcome.

Repo: GitHub - omarluq/termisu: Minimalistic API for writing text-based user interfaces in pure Crystal 🍮 · GitHub

Onward to 1.0 :rocket:

Thanks! termisu is awesome :)