A fun, image-guessing game built with React (Web) and React Native (Expo), sharing a single logic package.
apps/web: React + Vite SPAapps/mobile: Expo + React Native apppackages/shared: Shared logic, types, and data
- Monorepo: Turborepo + Bun Workspaces
- Web: React, Vite, Tailwind CSS v4
- Mobile: React Native, Expo, React Native Skia
- Shared: TypeScript
-
Install dependencies:
bun install
-
Run web app:
bun run dev:web
-
Run mobile app:
bun run dev:mobile
To refresh character data and images from external APIs:
# Requires TMDB_API_KEY and FOOTBALL_DATA_API_KEY in packages/shared/.env
bun run generate- Kebab-case: All files and folders
- Flat Structure: No nested subdirectories in feature folders
- SSOT: All game logic and data in
@pixel-guess/shared - No Backend: Fully client-side, images bundled at build time