Thanks!<p>You can watch the talk at Ada Developers Workshop Vasteras 2026, where I explain some of your questions:<p><a href="https://www.youtube.com/watch?v=d-RISfK9Sy8" rel="nofollow">https://www.youtube.com/watch?v=d-RISfK9Sy8</a><p>I should write more details in the repo's README file.<p>Basically, I was quite frustrated with the available solutions vs. my requirements and ended up making my own, and this process took me many years.<p>Ada is a language that I always admired, but at the time I didn't feel comfortable depending on the available open-source toolchains. GNAT has actually been open source for decades, but a few years ago, with the increasingly accessible FSF GNAT ecosystem, things changed dramatically.<p>I think people in the embedded world should really consider Ada/SPARK, where you can formally prove program correctness in Ada itself, going much beyond simple memory safety. Also, Ada's mapping of records directly to registers with bit and read/write semantics granularity is unbeatable. I could go on, but plenty of information is readily available online. BTW, I still consider myself a beginner in Ada; I'm perhaps leveraging 10% of its potential. I really recommend giving Ada (or yourself) a chance.<p>Why not Rust? I considered it, but dropping support for versions earlier than Windows 10 scared me away. It is not an option for my use case, where industrial customers have old operating systems.<p>SDL3 was a perfect fit as a backend since it abstracts away the hardware perfectly and allows me to focus on my own business. It remains to be seen whether I can abstract it away and let the user choose the backend. I use as few features as I can; for example, for rendering, I use the good old SDL_Renderer API, which does not require specific GPU drivers or features and falls back nicely to software rendering. Drop shadows are simply software-rendered and cached; the same applies to SVG images and Lottie animations. In this way, I simplified the requirements a lot. Then the SDL3_ttf was god send for text.