
Thuja
A student team at Penn State Behrend built Thuja, a terminal UI framework in Ada featuring an ECS core, flexbox-style layout, and diff-based rendering, as their SWENG 480 capstone.

Penn State Behrend
What does a modern terminal UI framework look like when it's written in Ada? Four students at Penn State Behrend spent their SWENG 480 capstone finding out. Working with an AdaCore industry mentor through the GNAT Academic Program, Team 26 built Thuja: a TUI framework with a pure ECS (Entity-Component-System) core, a flexbox-inspired layout engine adapted to character cells, double-buffered diff-based rendering, and full RGB ANSI styling, on Linux and Windows, built with Alire.
The demo application alone is worth a look: an htop-style system monitor, a modal text editor, an interactive flexbox playground, and a sorting-algorithm visualizer, all running on the same ECS.
Thuja is a capstone project, not a finished product, and that's the point. It shows what a small team new to Ada can ship in two semesters and adds another building block to the Ada open-source ecosystem.


