
Problem / Context
A portfolio website needed a read-only mobile companion with offline resilience.
What it does
- Home/career/work/case-study/CV/contact/settings screens
- Three-layer offline cache (disk/bundled seed/network), content-hash-gated refresh
- Aurora theme parity with web; OTA updates via rocket launcher
Engineering notes
Flutter 3.41/Dart 3.11, Android; go_router, provider, cached_network_image, flutter_pdfview.
Outcome / Value
Offline-first mobile client consuming a self-hosted API — resilient mobile UX demo.
Screens

