Skip to content

Case study

GoGooPo

A city guide for the Burmese community in Bangkok, in one Flutter codebase across Android, iOS and web.

Role
Built and run by me
Studio
Solo
Period
Dec 2023 – Present
Scale
Android · iOS · Web

GoGooPo is a city guide I built and still run for Burmese people living in Bangkok. One Flutter codebase serves the Android app, the iOS app and the web version, and I wrote the backend API and the MongoDB data model myself so every surface reads the same content.

  • Flutter app (Android, iOS, Web)
  • Ktor backend API
  • MongoDB data model
  • Firebase Remote Config
  • Burmese & English localization
  1. 3 platforms

    1 Flutter codebase

    One codebase, three surfaces

    The same Dart ships to Android, iOS and the web. The layout was designed to reflow cleanly between phone and browser so I never had to maintain a parallel build.

  2. 1 model

    MongoDB, all surfaces

    Wrote the data model and the API myself

    The backend and the MongoDB data model are mine, which means the app, the web and any future client read the same content without a translation layer in between.

  3. 0 rebuilds

    for content changes

    Remote Config for live edits

    Firebase Remote Config handles the copy, the feature flags and the settings that change more often than the release cadence. Shipping a string change no longer needs a build.

Stack

  • Language & UI

    • Flutter
    • Dart
    • Responsive layouts
  • State & data

    • Provider
    • MongoDB driver
    • freezed
  • Backend

    • Ktor
    • REST API
    • Firebase Auth
    • Firebase Remote Config

All work