The Accra Commute Estimator is a Flask-based web application that predicts the estimated arrival time for commuters in Accra.
# 🕐 Time Estimator — Commute Arrival Predictor
> A Flask-based machine learning web app that predicts your estimated arrival time based on departure time, transport mode, and location — built for commuters in Accra, Ghana.
🔗 **Live Demo:** time-estimate.onrender.com
---
## 📌 Overview
Time Estimator is an end-to-end machine learning project that takes a commuter's inputs and returns a predicted arrival time. It was built as a **proof-of-concept prototype** to demonstrate a complete ML workflow — from data collection to cloud deployment.
> ⚠️ **Note:** The dataset was collected from a small group of volunteers via SurveyCTO, so predictions are experimental rather than production-grade. The primary goal of this project is to showcase the full pipeline: data collection → model training → Flask integration → deployment.
---
## ✨ Features
- ⏱ Departure time selection via Flatpickr (24-hour format)
- 🚌 Multiple transport modes: Trotro, Taxi, Private Vehicle, Walking
- 📍 Dropdowns for home and office locations across Accra
- 🤖 ML-powered arrival time prediction
- 📱 Responsive UI with persistent form state after submission
- ☁️ Deployed and accessible via Render
---
## 🧠 Machine Learning Details
| Property | Details |
|---|---|
| Data collection | SurveyCTO (manual, from volunteers) |
| Dataset size | Small / experimental scale |
| Preprocessing | Pandas |
| Model framework | Scikit-learn |
| Model serialization | Joblib (`.pkl`) |
Because of the limited dataset size, this model is a **proof-of-concept** — not a fully optimized predictive system. See Future Improvements for the roadmap.
---
## 🛠 Tech Stack
**Backend** — Flask · Pandas · Scikit-learn · Joblib
**Frontend** — Bootstrap 5 · Flatpickr · Font Awesome (all via CDN)
**Deployment** — Render
**Data Collection** — SurveyCTO
---
## 🚀 Running Locally
### 1. Clone the repository
```bash
git clone
github.com
cd time_estimate
```
### 2. Create and activate a vir …