# KeyMove Africa
East Africa's verified property platform — rentals, short stays, movers, and supplier onboarding across Kenya, Uganda, Tanzania, and Rwanda.
## Stack
- **Next.js 16** — App Router
- **TypeScript** — strict mode
- **Tailwind CSS v4** — mobile-first design system
- **Supabase** — auth + database (Phase 1+)
- **Zod** — input validation (Phase 1+)
## Getting Started
### Prerequisites
- Node.js 18+
- npm 9+
### Setup
```bash
npm install
cp .env.example .env.local
# Edit .env.local with your Supabase credentials
npm run dev
```
Open
localhost.
## Scripts
| Command | Description |
|---------|-------------|
| `npm run dev` | Start dev server with Turbopack |
| `npm run build` | Production build |
| `npm run start` | Start production server |
| `npm run lint` | Run ESLint |
| `npm run typecheck` | Run TypeScript compiler check |
## Project Structure
```
├── app/ # Next.js App Router
│ ├── (auth)/ # Auth routes: /auth/sign-in, /auth/sign-up
│ ├── (protected)/ # Protected routes: /dashboard, /admin
│ └── (public)/ # Public routes: /search, /short-stays, etc.
├── components/
│ ├── layout/ # Navbar, Footer, PageShell
│ └── ui/ # Button, Card, Input, Badge
├── config/ # Site-wide constants
├── features/ # Feature modules (Phase 2+)
├── hooks/ # Custom React hooks
├── lib/ # Shared utilities
├── services/ # Data access layer
├── types/ # TypeScript types
└── docs/ # Architecture docs and schema
```
## Phases
- **Phase 1 (in progress):** Scaffold, design system, auth, Supabase schema
- **Phase 2:** Search, listings, dashboards, admin tools, CRM
- **Phase 3:** Payments, communications, SEO, hardening
- **Phase 4:** AI integrations, analytics
## Architecture Decisions
See docs/decisions.md.
## Database Schema
See docs/schema.md.
# Key-Move-Africa