A complete university hackathon prototype for indoor/outdoor campus navigation. The system helps students find classrooms, labs, library, admin office, canteen, and hostels, while calculating the shortest path between buildings using the A* algorithm.
- Search campus buildings by name
- Shortest path navigation using NetworkX A*
- QR scan simulation to set current location
- Step-by-step route directions
- Admin APIs to add buildings and connect paths
- Preloaded sample campus data for demo use
- Backend: Python 3.11, Flask (REST API)
- Database: SQLite
- Graph Navigation: NetworkX with A* pathfinding
- Frontend: HTML, CSS, Vanilla JavaScript
- Map: Custom local campus image (
static/campus_map.png)
hackathon-project/
│
├── backend/
│ ├── app.py
│ ├── routes.py
│ ├── models.py
│ ├── graph.py
│ ├── database.db
│ ├── seed_data.py
│
├── frontend/
│ ├── index.html
│ ├── style.css
│ ├── script.js
│
├── static/
│ └── campus_map.png
│
├── requirements.txt
├── README.md
└── .env.example
GET /buildingsGET /navigate?start=Library&end=CanteenPOST /scan_qrPOST /admin/add_buildingPOST /admin/connect
python -m venv venv
source venv/bin/activate.\venv\Scripts\Activate.ps1pip install -r requirements.txt
python backend/seed_data.py
python backend/app.pyThen open http://127.0.0.1:5000 in your browser.
Example for start=Library and end=Canteen:
You are at Library → Then go to Admin Office → Then go to Canteen (Destination reached)
Total distance: 27.0 units
This project runs fully locally without internet access after dependencies are installed.