A unified booking system for buses, trains, domestic flights and parcels in Kenya. Integrated with the gps and chatbot.
# 🚀 SmartTravels — Kenya's Unified Transport Booking Platform
A full-stack Django system integrating **Bus · Train · Flight** bookings, live GPS tracking,
M-Pesa payments, dynamic seat allocation, parcel delivery, QR tickets, and admin dashboards.
---
## ⚡ Quick Start (2 steps)
### 1. Install Python 3.10–3.12
Download:
python.org
### 2. Run
```bash
cd smarttravels
python run.py
```
Open **
http://127.0.0.1:8000**
> No pip install needed — all dependencies are bundled in the `/lib` folder.
---
## 🔑 Test Accounts
| Role | Username | Password | Dashboard |
|----------------|----------------|-----------------|----------------------------------|
| System Admin | `admin` | `Admin1234!` | /systemadmin/dashboard/ |
| Bus Admin | `bus_admin` | `BusAdmin1!` | /buses/dashboard/ |
| Train Admin | `train_admin` | `TrainAdmin1!` | /trains/dashboard/ |
| Flight Admin | `flight_admin` | `FlightAdmin1!` | /flights/dashboard/ |
| Driver | `driver01` | `Driver1234!` | /drivers/dashboard/ |
| Passenger | `passenger` | `Pass1234!` | /accounts/dashboard/ |
Login at: **
127.0.0.1
---
## 📁 Project Structure
```
smarttravels/ ← Django project root
│
├── run.py ← ONE-CLICK START SCRIPT
├── manage.py
├── db.sqlite3 ← SQLite database (auto-created)
├── requirements.txt
│
├── smarttravels/
│ ├── settings.py ← All config (DB, M-Pesa, static)
│ └── urls.py ← Root URL routing
│
├── apps/
│ ├── accounts/ ← Auth, login, register, unified booking view
│ │ └── views.py ← dashboard_view, book_trip, passenger_seat_layout,
│ │ download_ticket (PDF with QR)
│ │
│ ├── systemadmin/ ← System Admin: full control
│ …