This is my a level computer science project, the problem it solves is the fact that mapping platforms didn't map my school, due to it being a private property.
This project has three main features.
- Interactive map
- Shortest path calculation between points
- Events report system
Interactive map
- First using a satellite image of a school, with the JavaScript library leaflet.js, an image map is initiated.
- The satellite image is then drawn onto, to highlight paths, parking spaces, shortcuts, stairs and entrances.
- Leaflet popup are then made for each entrance and intersection, with a special code associated with each popup.
- It will allow the user to click on the popup, and use the special code to preform shortest path calculation between two points.
Shortest path calculation between points
- Using a bootstrap offcanvas sidebar, the user can enter the special code of the entrance or intersection, and the shortest path to the destination will be calculated.
- Parameters can be used to filter out certain paths, e.g. stairs.
- The shortest path algorithm used is Dijkstra's algorithm.
Events report system
- Using mongodb, a database to hold events and staff member accounts are made.
- A web cookie system allows staff members to login and report events, e.g. Someone crashing a school bus into a gate
- Admins can demote and promote staff members.
- A caching system is implemented for the events, so the events are available for the users to view without the need to query the database.