SixByFive TCG Mobile
Full feature parity with the TCG platform — on Android, with a native feel.
The web platform works well on desktop, but collectors use their phones — at card shows, pulling up a binder to show someone, checking a price before buying a card across a table. A browser tab on mobile is functional but it's not the right experience for those moments.
The goal wasn't a stripped-down companion app or a marketing page that links to the web. It was full parity: everything you can do on the web platform, working natively on Android, using the same data and the same account.
Expo was the right choice for a team already working primarily in React and TypeScript — the component model is familiar, the tooling is mature, and the managed workflow means we're not maintaining native build infrastructure as a side job. React Native's bridge to the platform gives us access to native APIs where we need them without writing Java or Kotlin.
The GraphQL API that backs the web platform serves the mobile app directly — no separate mobile backend, no API versioning split to maintain. The data layer is shared; only the presentation layer is different.
Making search feel right on mobile
Search on a phone is a different interaction to search on desktop. The keyboard takes up half the screen, results need to load fast enough that the experience feels responsive, and the information density per result has to be lower — you can't show the same amount per card as a desktop table row. Redesigning the search result format for a narrow screen without losing the information that makes a result useful (set, variant type, price) took more iteration than expected.
Binder layout on a small screen
The binder builder on web shows a grid of cards you can arrange and browse. On mobile, that grid has to work at a much smaller scale — cards are tiny, drag-and-drop is replaced by tap interactions, and the navigation between binder pages needs to feel natural on a touchscreen. Getting this right meant rethinking the interaction model rather than porting the web version directly.
Expo build pipeline and OTA updates
Expo's managed workflow handles a lot, but the build and submission pipeline for Android still has sharp edges — keystore management, versioning, EAS Build configuration. Setting this up in a way that's repeatable and doesn't require archaeological knowledge of what was done last time took careful documentation. Over-the-air updates via Expo are valuable for shipping fixes without a full store submission, but they require care about what can and can't be updated OTA.
Currently in beta. Android-only for now — iOS is the natural next step once the Android experience is fully stable.