EduLearn Mobile is the React Native app for EduLearn, built with Expo and Expo Router. It includes AI tutor chat, quizzes, flashcards, roadmaps, rewards, community, referrals, and user progression features.
- Expo SDK 55
- React Native 0.83 / React 19
- Expo Router (file-based routing)
- Zustand (state management)
- Supabase JS client
- Socket.IO client
- Authentication and onboarding
- AI chat and agent flows
- Quizzes and quiz leaderboard
- Flashcards
- Roadmaps and activity tracking
- Rewards and streaks
- Community hub
- Referrals
- Notifications
- Wallet and subscription screens
- Node.js 18+
- npm
- Expo CLI via
npx expo
-
Install dependencies:
npm install
-
Create your local environment file:
cp .env.example .env
On Windows PowerShell:
Copy-Item .env.example .env -
Set the required values in
.env:EXPO_PUBLIC_SUPABASE_URLEXPO_PUBLIC_SUPABASE_ANONEXPO_PUBLIC_API_BASE_URLEXPO_PUBLIC_TWITTER_CLIENT_ID
-
Start the app:
npm run start
-
Run on a target platform from the Expo prompt (or use scripts below).
npm run start- start Expo dev servernpm run android- run Android buildnpm run ios- run iOS buildnpm run web- run web targetnpm run lint- run lint checks
app/- routes and screens (Expo Router)components/- reusable UI componentscore/- Zustand stores and stateservices/- API/service layerutils/- helpers, constants, routing utilitiesassets/- fonts, images, animations
- This app reads backend and auth configuration from
app.config.jsand.env. - Keep secrets out of version control. Client-exposed values should use
EXPO_PUBLIC_*.