Fleet Tracking is a modern and robust system designed to manage and track vehicle fleets. Developed with cutting-edge technologies, it provides an efficient and scalable solution for creating geographic routes and monitoring private fleet vehicles in real-time as they move across the map.
- 📍 Real-Time Vehicle Tracking: Monitor your fleet vehicles live on a map.
- 🗺️ Geographic Route Creation: Create routes easily with Google Maps.
- 🌐 Multi-Language Support: Available in Portuguese (Brazil), English, and Spanish.
- 🛠️ Scalable Architecture: Built with modern technologies to handle fleets of any size.
- 📱 Responsive Design: Adaptive interface for desktops, tablets, and mobile devices, ensuring a great experience on any screen.
- 💻 Frontend: Next.js - React framework for web application development.
- 🔧 Backend: NestJS and GoLang - GoLang is used as a simulator to send coordinates to Kafka, simulating vehicles moving along defined routes, which are consumed from Kafka via WebSocket by Next.js.
- 🗄️ Database: MongoDB - NoSQL database for managing dynamic and large datasets.
- 🐳 Containerization: Docker - For consistent and portable application deployment.
- 🎨 Styling: Tailwind CSS - For a responsive and modern interface.
- 🌍 Maps API: Google Maps APIs - For real-time location and route rendering.
- 📨 Messaging System: Apache Kafka - Ensuring reliable and high-throughput communication.
- Docker installed on your machine.
- A Google Cloud API Key (can be obtained for free from the Google Cloud Console) with the following APIs enabled: Directions API, Maps JavaScript API, and Places API. .
-
Clone the repository to your local machine:
git clone https://github.com/Leandro-Lucena/fleet-tracking
-
Rename the
.env.example
files to.env
,and replace<YOUR_GOOGLE_API_KEY>
with your Google Cloud API Key. Update the.env
files in both the/nestjs-api
and/next-frontend
directories. -
Navigate to the project root directory and start the containers using Docker Compose:
docker compose up
-
Sit back, relax, and grab a coffee ☕ while Docker sets everything up! Once all containers are up, access the Fleet Tracking on your browser via:
http://localhost:3001
Enjoy exploring how the Fleet Tracking system works and see how the project is structured!