A driving-theory exam trainer, rebuilt for every screen.
The app that started it all. I published the first version on Google Play in 2015; it earned revenue and led directly to my first developer job. Today it's a Kotlin Multiplatform app that runs on Android, iOS and the web from one shared Compose codebase.
▹Adaptive layouts for phones, tablets and desktop browsers
▹Stateless screens, one StateFlow per ViewModel, and repositories that hold the business rules
▹Question banks in three languages and a UI in four, with the official exam format for every license group
A small Android app that shows how I structure code.
An architecture showcase: a single-activity Compose app with a Retrofit network layer talking to a Rails backend. The point isn't the features, it's the shape — the kind of codebase I'd use on a client project.
▹Packages sliced by what a file is about
▹Three modules wired by convention plugins
▹MVVM with unidirectional data flow, one direction of dependency enforced by plugins