GPS based asset tracking dashboard to track all the company’s assets. dashboard showing the assets (can be delivery trucks or salespersons) on a map so the assets can be easily tracked, with the option to drill down further into the details of a specific asset.
Jumbotail is aimed at creating an online wholesale marketplace for food and grocery, allowing buyers and sellers to transact on the platform. Some use cases that the company caters to, like delivery, sales personnel marketing, require a need to implement a GPS based tracking system to track movements to optimize the supply chain.
Being able to track movement of delivery persons and fleet on a map has become a necessity to optimize the supply chain by improving delivery times.
- Authentication (login/signup)
- Map on which markers show the latest locations of all assets. ( by default 100 markers )
- Support search/filter options based on asset id or asset type.
- Support for time based filters which will take start date/time and end date/time as inputs.
- Upon clicking over a marker, it gives a popup showing asset details like asset type, asset id, timestamp and option for different views.
- Timeline based view of the asset, which shows markers for each location of the asset for the past 24 hours ( default )
- Geofencing - a feature to allow selection of an area on a map that a particular asset has to be restricted to. Any movement of this asset outside of the selected area results in a notification on the application’s UI.
- Anomaly Detection - allows a user to select a predefined route and set it as expected route for a particular asset. Any deviation from this route triggers a notification.
- Responsive UI, can be used across different divices.
- Notifcations on asset movements.
- React - Front-end JavaScript library
- Mapbox - For Map Api
- deck.gl - Visualization framework built on Mapbox
- react-map-gl - React wrapper for Mapbox GL
- nebula.gl - A suite of 3D-enabled data editing overlays, suitable for deck.gl.
- material-ui - UI tools for React
- Node.js - Evented I/O for backend
- Express - Fast Node.js network app framework
- Socket IO - JavaScript library for realtime web applications
- MongoDB - General purpose, document based NoSQL Database
- Postman - For api testing and documentation
It requires React to run.
Install the dependencies
cd client/
yarn install
Setup environments variables. (fill in .env template)
mv .env.template .env
Start the server
yarn start
It requires Node.js v14+ and MongoDB v4+ to run.
Install the dependencies and devDependencies.
cd server/
npm install
Setup environments variables. (fill in .env template)
mv src/config/config.env.template src/config/config.env
Start the server
npm run start
Testing
Make sure you have mochajs installed globally, Setup environments variables.
npm run test
heroku login -i
heroku git:remote -a <your-app-name>
git push heroku master
Set up environment variables
heroku config:set ENV_VAR=<value>
- Harsh Vardhan - Initial work - desert3agle
- Mohit Jaiswal - Initial work - kelvin0179