Logo Lanfrica

DriZy/ai-imutis-mobile

Domain:

mobility

Record type:

software
Creator:
Dri
Host:
AI-Assisted Inter-Urban Mobility and Urban Tourism Information System (AI-IMUTIS) Mobile App for Cameroon . # AI-IMUTIS - Ride Tracking & Tourism App A **TypeScript** React Native mobile application built with Expo for ride tracking and tourism, featuring Firebase authentication with multiple sign-in methods. ## Features - **Splash Screen**: Branded app intro with AI-IMUTIS logo - **Onboarding**: Interactive carousel showcasing app features - **Multi-Method Authentication**: - Email/Password sign-up and sign-in - Phone number verification with OTP - Google OAuth sign-in - **Dashboard**: User home screen with quick actions and stats - **Firebase Integration**: Secure authentication and data persistence - **TypeScript**: Full type safety and improved developer experience ## Tech Stack - **React Native** with **Expo SDK 54** - **TypeScript**: Fully typed codebase for type safety - **React Navigation**: Native Stack Navigator with type-safe routing - **Firebase**: Authentication (Email, Phone, Google) - **expo-linear-gradient**: Beautiful gradient UI - **expo-auth-session**: OAuth flows - **AsyncStorage**: Persistent auth state ## Prerequisites Before you begin, ensure you have: - Node.js (v18 or higher) - npm or yarn - Expo Go app on your mobile device (for testing) - Firebase project with Authentication enabled ## Setup Instructions ### 1. Clone and Install Dependencies ```bash cd mobile npm install ``` ### 2. Configure Firebase 1. Go to Firebase Console 2. Create a new project or select an existing one 3. Enable Authentication: - Go to **Authentication > Sign-in method** - Enable **Email/Password**, **Phone**, and **Google** providers 4. Get your Firebase configuration: - Go to **Project Settings > General** - Scroll to "Your apps" and click the web icon ` ` - Copy the Firebase SDK configuration ### 3. Set Up Environment Variables 1. Copy `.env.sample` to `.env`: ```bash cp .env.sample .env ``` 2. Edit `.env` and add your Firebase credentials: ```env FIREBASE_API_KEY=your_firebase_api_key_here FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com FIREBASE_PR …