# WayFinder Kenya - Smart Road Alert System
A mobile-first navigation app that alerts drivers of murram roads, construction zones, and road hazards in Kenya.
## Features
- π§ **Real-time Road Alerts**: Get notified of murram roads, construction zones, potholes, and flooded sections
- π **GPS-based Proximity Alerts**: Automatic warnings when approaching road hazards (within 500m)
- πΊοΈ **Interactive Map**: View all reported conditions on an intuitive Leaflet-based map
- π± **Mobile-First Design**: Optimized for use while driving or stopped briefly
- π **Offline Support**: Download maps for offline navigation
- π£οΈ **Voice Navigation**: English and Swahili language support
## Quick Start
```bash
# Install dependencies
npm install
# Start development server
npm run dev
# Build for production
npm run build
# Preview production build
npm run preview
```
## Deployment
### Vercel (Recommended)
1. Connect your GitHub repository to Vercel
2. Vercel will auto-detect the Vite framework
3. Deploy with zero configuration
Or use the CLI:
```bash
npm i -g vercel
vercel --prod
```
### Netlify
1. Connect your GitHub repository to Netlify
2. Build settings are auto-configured via `netlify.toml`
3. Deploy automatically on push
Or use the CLI:
```bash
npm i -g netlify-cli
netlify deploy --prod --dir=dist
```
### Manual Deployment
```bash
npm run build
# Upload the `dist` folder to any static hosting service
```
## Tech Stack
- **Framework**: React 18 + TypeScript
- **Build Tool**: Vite
- **Styling**: Tailwind CSS
- **UI Components**: shadcn/ui + Radix UI
- **Maps**: Leaflet + React-Leaflet
- **Animations**: Framer Motion
- **State Management**: React Context + TanStack Query
## Project Structure
```
src/
βββ components/
β βββ navigation/ # Map and navigation components
β βββ ui/ # Reusable UI components
βββ contexts/ # React context providers
βββ hooks/ # Custom React hooks
βββ lib/ # Utilities (validation, rate β¦