Velo Maps

(/velo-maps.svg)

# Velo Maps
**Stack:** React, TypeScript, Vite, Tailwind CSS, Leaflet, Socket.IO, Kafka, PostgreSQL, Drizzle ORM, Google Auth, JWT
**Date:** June 2026
**GitHub:** [View Repository](https://github.com/Ravi0529/velo-maps)
## Overview
Velo Maps is a live location tracking web app where authenticated users join a shared map, stream location updates in real time, and view movement trails from other active users.
## Key Highlights
- Built a live location tracking web app where authenticated users join a shared map, stream updates in real time, and view movements from other active users.
- Implemented Google OAuth login and persisted users in PostgreSQL with JWT-protected HTTP and Socket.IO authentication.
- Published location events to Kafka and used separate consumers for broadcasting updates and storing location history.
- Added presence tracking, last seen handling, deduplication, rate limiting, and stale user cleanup to support sustained real-time usage.
## Features
- Google OAuth login with persisted user profiles in PostgreSQL
- JWT authentication for both REST API and Socket.IO connections
- Live location streaming with real-time map updates
- Kafka producer for location events and two Kafka consumers for broadcast and persistence
- Presence tracking with active user handling and last-seen timestamps
- Noise reduction with update deduplication and rate limiting
- Stale user cleanup to keep active user state accurate
- Movement path drawing on the frontend map for real-time trails
## Tech Stack
React, TypeScript, Vite, Tailwind CSS, Leaflet, Socket.IO, Kafka, PostgreSQL, Drizzle ORM, Google Auth, JWT
---
For more details, check out the [Projects](/projects) page or explore other [Experiences](/experience).