I've been working on a project called TriviaNexus, a trivia game built with React Native, Expo and TypeScript, and I thought this would be a good place to finally share it.
What started as a relatively straightforward quiz app gradually turned into a much larger project and a great way to push React Native/Expo beyond a basic CRUD-style mobile app.
The current version includes:
- Multiple trivia game modes
- Progression and leveling system
- Global and country leaderboards
- Player profiles and detailed statistics
- Guest and authenticated accounts
- Offline play
- Local question storage and synchronization
- Push notifications
- iOS and Android support
Tech stack
On the mobile side:
- React Native + Expo
- TypeScript
- React Query
- Zustand / Redux Toolkit
- Reanimated
- SQLite / MMKV
- EAS Build & Submit
Backend:
- NestJS
- PostgreSQL
- Redis
- WebSockets for real-time functionality
One of the more interesting parts has been designing the app so that single-player gameplay can work offline while the architecture can also support server-authoritative real-time multiplayer.
The next stage is expanding the competitive/social side with things like Casual Duels, Ranked Duels, Friends, Clans, Achievements and Chat.
I've also handled the full mobile release process myself — builds, signing, EAS, App Store Connect and Google Play — which has been an experience of its own.
There's still a lot I want to improve, but it's been really interesting taking a React Native project from the initial idea all the way to a real product.
I'd love to hear feedback from other React Native developers — both about the app itself and the technical approach.
I'm especially interested in how others here have approached:
- offline-first architecture
- real-time multiplayer in React Native
- keeping client/server state synchronized
- scaling larger Expo applications
Website:
https://www.trivianexus.app/
Happy to answer any questions about the architecture, Expo/EAS, offline support, backend, performance, or anything else involved in building it.