A Python & Streamlit web app that solves Zimbabwe's fuel shortage crisis — find the cheapest petrol and diesel near you, check real-time availability, and read crowd-sourced reviews from other drivers across the countr
# ⛽ Fuel Station Checkout
A real-world problem-solving web app built with Python and Streamlit that helps Zimbabweans find the cheapest and most available fuel stations near them — with live pricing, stock status, customer reviews, and analytics.
## 🚨 The Problem
Zimbabweans waste significant time and money driving from station to station looking for fuel, especially during shortages. There is no centralised platform showing real-time fuel prices and availability across the country.
## ✅ The Solution
Fuel Station Checkout provides a single dashboard where users can:
- See all fuel stations within a chosen radius on an interactive map
- Compare petrol and diesel prices side by side
- Check real-time availability (Available / Low Stock / Out of Stock)
- Read and submit customer reviews and ratings
- Analyse price trends and brand performance
## 🖥️ Live Demo
> Deploy on Streamlit Cloud
## 🚀 Features
### 🗺️ Map View
- Dark-mode Folium map centred on user's city
- Colour-coded markers: 🟢 Available · 🟡 Low Stock · 🔴 Out of Stock
- Adjustable search radius (1–30 km)
- Clickable popups with full station details
### ⛽ Station Directory
- Full list of stations sorted by distance, price, or rating
- Amenity badges (Restrooms, Car Wash, ATM, Restaurant, etc.)
- Last updated timestamp per station
- Brand colour coding
### ⭐ Reviews & Ratings
- Customer reviews with star ratings and fuel type
- Submit your own review directly in the app
- Top rated stations leaderboard
- Filter reviews by station
### 📊 Analytics Dashboard
- Average fuel price by brand (petrol vs diesel)
- Petrol availability breakdown pie chart
- Customer rating by brand comparison
- Price vs rating scatter plot
- Full price comparison table
## 🛠️ Tech Stack
| Tool | Purpose |
|------|---------|
| Python 3.10+ | Core language |
| Pandas | Data manipulation |
| NumPy | Distance calculations (Haversine formula) |
| Matplotlib | Chart rendering |
| Folium | Interactive map |
| streamlit-folium | Streaml …