Plain lists — the quiet gym for every mobile developer
A deliberately small Flutter app: add tasks, check them off, keep the UI readable. No viral growth hacks—just the discipline of making “boring” state feel obvious, which is harder than it sounds when you are early in your career.
If you cannot make a list feel trustworthy, you will not make a logistics dashboard trustworthy either. This project was my sandbox for widgets, state, and affordances without a marketing story getting in the way.
Three beats — humble scope, sharp lesson, bigger stage later.
Spark · then
Early Flutter: composition, navigation, local persistence patterns. The app was “just” todos because I wanted reps, not a pitch deck.
Lesson · what stuck
Users forgive missing features faster than they forgive ambiguous state (what is done, what is pending, what failed). That obsession moved with me into BLoC-heavy apps and multi-screen products.
Trajectory · toward
Today I architect features with repositories, typed domains, and role-specific flows. The todo app was the grammar lesson; the later work is where I write full sentences.
Some engineers only show hero projects. I keep todos in the archive on purpose: it signals I respect fundamentals and I am comfortable showing the floor I built the ceiling on.