# Smart Transport Ghana
A React Native/Expo application for real-time ride-hailing in Ghana. Features passenger and driver modes with demo authentication.
## π Quick Start
### Prerequisites
- **Node.js** >= 18.x
- **npm** >= 9.x
- **Expo CLI** (installed via npx)
### Installation
```bash
# Navigate to the project directory
cd smart_transport_ghana/flutter
# Install dependencies (using legacy peer deps due to React 19 compatibility)
npm install --legacy-peer-deps
```
### Development
```bash
# Start the development server
npx expo start
# Or start with specific options
npx expo start --localhost --port 8081
```
This will start the Metro bundler and show a QR code. You can:
| Platform | How to Access |
|----------|---------------|
| **Web** | Press `w` in terminal, or open
localhost |
| **iOS** | Scan QR code with Camera app, or press `i` in terminal |
| **Android** | Scan QR code with Expo Go app, or press `a` in terminal |
### Demo Credentials
The app includes demo accounts for testing:
| Role | Email | Password |
|------|-------|----------|
| **Passenger** | `passenger@demo.com` | `Pass1234!` |
| **Driver** | `driver@demo.com` | `Drive1234!` |
## π¦ Available Scripts
| Command | Description |
|---------|-------------|
| `npm run dev` | Start development server (configured for Replit environment) |
| `npm run build` | Build production static files (outputs to `static-build/`) |
| `npm run serve` | Serve production build (requires build first) |
| `npm run typecheck` | Run TypeScript type checking |
### Build for Production
```bash
# Build static files for web deployment
npm run build
# Serve the production build locally
npm run serve
```
The production server will be available at
localhost
## ποΈ Project Structure
```
flutter/
βββ app/ # Expo Router pages
β βββ _layout.tsx # Root layout with providers
β βββ index.tsx # Main screen (login, passenger, driver)
β βββ (tabs)/ β¦