Engineering · 25 April 2026 · 7 min read
Stepping outside React: notes from a mobile project I can't name
A confidential mobile app engagement pulled me out of React and into Flutter for a few months. Here's what carried over, and what didn't.
Most of my freelance work has stayed inside React and Next.js, but one engagement — a mobile app I'm under NDA not to name or show — meant working primarily in Flutter for a few months. Different language, different rendering model, same underlying job: build an interface someone can trust.
The habits that carried over were mostly about state, not syntax. Where does this value live, what invalidates it, and how do you keep a screen from rendering a stale answer while a request is in flight — that discipline transfers almost directly from React hooks to Flutter's widget and state-management patterns.
What didn't carry over as easily was the mental model for layout. Years of thinking in CSS — box model, flexbox, the cascade — don't map cleanly onto Flutter's widget tree, where everything is composition and there's no shorthand for 'just add ten pixels of margin' without wrapping a widget in another widget.
Working outside your main stack for a few months is uncomfortable in a useful way. It's a fast way to find out which of your habits are actually about building good software, and which ones were really just React opinions you'd mistaken for principles.