Skip to content

A indoor navigation app for Graphic Era Hill University using Dijkstra algorithm

Notifications You must be signed in to change notification settings

ayush-saklani/navit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Indoor Mapping - Navit ( v1.0 )

Navit is an indoor mapping solution made for University campuses. (currently, more than proof of concept but a little less than completed)


Languages, Frameworks and Tools

How to run this project

  • Backend ( Server ) - /backend npm install npm start ( starts the server )
  • Frontend - Open frontend/index.html ( home page ) or Navit

⭐ Ideas and features to work and figure out right now

Version 1.0 ✅

  • Started with a problem in mind and the problem unvealed and changes the significant app fundamental approches to solve the problem and new approches were used.
  • Route Management - Add routes using GeoJSON and calculate the shortest path using Dijkstra's algorithm and appropriate data structures.
  • Dynamic Floor Polylines - Create an array of floors to show the polylines floor-wise. Each array element will contain coordinates for that specific floor to create the polyline accordingly.
    (Floor numbering: 0 for ground floor, 1 for first floor and 6 for underground).
  • Implement basic functionality for routing.
  • Data Structture design and Implementation
  • Complete UI Design and improvements.
  • Complete Map were Designed in GeoJSON and later improvements were made.
  • Complete Routes were Designed in GeoJSON and later improvements were made.
  • Utilize the Leaflet library to draw routes on the map with polylines, dynamically using coordinates as an array of strings input.

Version 1.8 ⌛ ( under development )

  • Fetch Requests - Move all fetch requests to server.js for privacy and security.
  • Basic API Design and Implementation.
  • Automate direction finding and identify idle classrooms and labs by storing timetables in the database (Possible API integration with class-sync).
  • Floor numbering changed for ease: 0 for underground floor, 1 for ground floor and so on. 🟢
  • Dynamic Centering - setting dynamic center by using cookies to add coordinates to center. Use the last coordinate to determine the center.
  • Database Integration - Introduce a database to store custom maps and routes.
  • Authentication and Security - Implement authentication for students to verify users.
  • Possibly restrict mapping functionalities to within the campus IP or network for safety concerns.

Keep Coding, Keep Smiling!, Have Fun! 💻🚀