case study · 2021 · 2026

GameZone: a cross-platform game review log

A mobile app for logging video game reviews: search RAWG's database of 900,000+ games, rate them out of five hearts and see cover art and Metacritic scores. One codebase for iOS, Android and the web.

role
Solo project
timeline
2021, updated 2026
stack
React Native, Expo, TypeScript, React Navigation
status
Live web demo
Screenshot of GameZone
01

What it does

  • Write, edit and delete reviews with a title, your thoughts and a 1–5 heart rating.
  • Link each review to a game from RAWG, adding its cover, release date, genres, platforms, Metacritic score and more.
  • Search and sort your reviews by title, text or genre.
  • Works offline, with reviews saved on the device.
  • Light and dark mode that follows the phone, with an in-app switch that's remembered.
02

How it's built

  • Typed navigation: every screen and its route parameters are typed, so mistakes are caught before the app runs.
  • One shared source of review data in a React context, which never writes until saved data has loaded, so reviews can't be overwritten on startup.
  • Game search waits for a 400 ms pause and cancels stale requests, and game details are cached for the session, keeping the app inside RAWG's free limit.
  • A single theme system that also tells the operating system which mode to use, so pop-ups and the keyboard match.
  • Web fallbacks for React Native features that don't exist in the browser.
03

Architecture

Screens read from a shared reviews context that persists to device storage, with a small cached client for the RAWG API.

  1. Screens
  2. Reviews context
  3. AsyncStorage
  4. RAWG API client
next projectExpensify