An AI-powered metro simulation for the city of Wardha. It offers two views: Passenger View to plan routes and get smart suggestions, and Admin View to monitor traffic, manage stations, and analyze predictions (helping visualize a smarter transit future).
It offers two interactive views:
- Passenger View: Plan metro routes, get real-time smart suggestions, and estimate arrival times.
- Admin View: Monitor metro traffic, manage stations, and analyze trends using predictive AI models.
This project envisions smarter, AI-driven public transit systems for emerging smart cities like Wardha.
Be part of the discussion, get real-time updates, and collaborate with other contributors on WardhaMetroFlow.
Whether you're contributing code, suggesting features, or just curious about the project, you're welcome!
- About the Project
- Features
- Tech Stack
- Getting Started
- Views
- Project Structure
- Contributing
- Good First Issues
- License
- Acknowledgments
- Back to Top
- Interactive metro route planner
- Real-time passenger & station simulation
- AI-based route optimization & predictions
- Passenger & Admin dashboards
- Voice/text input (optional)
- Modular and scalable codebase
- React.js
- HTML / CSS / JavaScript
- Leaflet.js (Map rendering)
- Python (Flask / FastAPI)
- scikit-learn
- pandas
- NumPy
- Chart.js
- Plotly
- SQLite / Firebase / MongoDB
Setup instructions are coming soon. Contributors are welcome to help improve this section._
-
Clone the repo:
git clone https://github.com/GSSoC-Flow/WardhaMetroFlow.git
-
Navigate to backend and install dependencies:
cd backend pip install -r requirements.txt -
Navigate to frontend and run React app:
cd ../frontend npm install npm start
- Select source & destination
- Smart route suggestions
- Arrival time estimates
- Supports voice/text input (optional)
- Add/manage stations & routes
- Live traffic monitoring
- Analyze predicted congestion
- Receive AI-driven optimization alerts
WardhaMetroFlow/
│
├── ai-models/ # AI/ML models and training scripts
│ ├── passenger_flow_model.py
│
├── api_models/ # Pre-trained model files and notebooks
│ ├── model.pkl
│ └── train_model.ipynb
│
├── backend/ # Backend logic (Flask/FastAPI)
│ ├── app.py
│ └── models/
│ ├── __init__.py
│ └── models.py
│
├── database/ # SQLite database
│ └── wardha.db
│
frontend/ # frontend (Passenger/Admin UI)
│
├── passenger/
│ └── passenger.html
│
└── admin/
└── admin.html
│
├── static/ # Static assets
│ └── Architecture.png
│
├── CODE_OF_CONDUCT.md
├── Contributing.md
├── Contributors.md
├── LICENSE
└── README.md
Here's a overview of how the different components of WardhaMetroFlow interact:
- Frontend (React) communicates with the Flask backend
- Backend serves API routes and logic
- Database (SQLite) stores metro and passenger data
- ML Model (
model.pkl) is used by the backend to make route or traffic predictions
The diagram is located at
static/Architecture.png. You can update it anytime using Visily, draw.io or Figma.
We welcome all contributors — whether you're into frontend, backend, ML, or data!
Steps:
- Fork the repository
- Create a branch:
git checkout -b feature-name- Commit your changes:
git commit -m "Added feature"- Push and open a Pull Request
- Refer to Contributing.md for more.
- Add a new station to the map
- Create a sample route JSON
- Improve route prediction accuracy
- Style Passenger dashboard
- Optimize Admin data visualization
This project is licensed under the MIT LICENSE.
Inspired by India's Smart City Mission
Built with love by open-source contributors during GSSoC 2025
