BhuMitra —
Friend of the Land
Enterprise-grade GPS land measurement ecosystem for farmers, surveyors, and real estate agents. A premium Flutter app backed by a NestJS + PostgreSQL + Redis cluster, engineered for 100,000+ concurrent users.
Land Measurement in India is Broken
In agricultural economies like India, land is the primary asset class. Yet boundary verification is still done with strings, tape measures, and paper sketches — leading to costly legal disputes, inaccurate records, and time-consuming processes that leave farmers and surveyors frustrated.
Real-Time Collaborative Surveying
BhuMitra's defining feature is Live Collaborative Surveying — multiple surveyors walk the boundary of a single plot simultaneously while an observer watches the perimeter grow in real time on a shared interactive map.
- Owner creates room → NestJS generates 6-digit code, stores room in Redis
- Corner members join → JWT WebSocket handshake, Redis saves socket↔room mapping
- Real-time GPS broadcast → throttled location updates emit roomState to all participants
- 60 FPS marker animation → TweenAnimationBuilder + custom LatLngTween prevents jarring GPS jumps
- Graceful shutdown → room destroyed from Redis, all members redirected to dashboard
Raw GPS events fire every 1000ms. Instead of jumping markers, BhuMitra uses a Flutter TweenAnimationBuilder with a custom LatLngTween — markers glide across the map at 60 FPS, giving a premium tracking feel even on budget Android devices.
CacheKey = userId + "-" + HTTPMethod + "-" + RequestURL. This prevents cross-contamination where User A accidentally receives cached data belonging to User B. Falls back to in-memory Map if Redis fails.
Two-Tier API Hardening
Standard JWT auth isn't enough. BhuMitra implements a dual-layer handshake to ensure only certified Android devices with the genuine app can access backend APIs.
Stateful session security uses JWT access tokens paired with hashed refresh tokens stored in PostgreSQL. Prevents concurrent login abuse — a new token rotation invalidates all previous sessions.