Skip to content

An admin panel that shows the real time locations of rental cars

Notifications You must be signed in to change notification settings

alielbashir/icar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Icar

Icar is a rental car admin panel that shows the real time locations of rental cars.

System Design

The system consists of a producer service that converts mock location data from a CSV into real-time location data, which is then periodically sent to a message broker. A bridge consumes the message broker's messages and saves them to a database. The backend is a RESTful API that returns the latest location for each vehicle everytime it is requested by the frontend.

Tech stack

  • Orchestration - Docker + Docker compose
  • Producer - Golang
  • Message broker - RabbitMQ
  • Bridge - JavaScript
  • Backend - Express.js, JWT auth
  • Frontend - React.js (functional components + hooks), Typescript

image

TODO

  • Integrate websockets to update locations without refreshing
  • Change normal mongodb to a timeseries mongodb database

About

An admin panel that shows the real time locations of rental cars

Resources

Stars

Watchers

Forks