Skip to content
← All projects
HackathoncompletedDEMO

Decentrathon 4.0, AI inDrive

Built GeoOS, a geospatial analytics platform with AI-powered anomaly detection at Kazakhstan largest hackathon.

Client
Decentrathon 4.0 / inDrive
Role
Sole Developer, Team RPR
Duration
2 days (Hackathon)
Date
2025-09
  • Next.js
  • TypeScript
  • TensorFlow.js
  • deck.gl
  • MapLibre
  • Recharts
  • TailwindCSS
Open the live app ↗

Decentrathon 4.0, GeoOS

Project Overview

GeoOS is a geospatial analytics platform built in 48 hours as a solo developer (Team RPR) for inDrive's Case 2 at Decentrathon 4.0, the largest hackathon in Kazakhstan. The platform provides interactive map visualizations with AI-powered anomaly detection for ride-hailing data analysis. Placed 7th out of 15+ competing teams, scoring 83 points.

The Challenge

inDrive needed a way to identify unusual patterns in their geospatial ride data, demand anomalies, pricing outliers, and route irregularities across Central Asian cities. The challenge required:

  • Processing large geospatial datasets in the browser
  • Real-time anomaly detection without server-side ML infrastructure
  • Interactive map visualizations that non-technical stakeholders could use
  • Building a complete, demo-ready product in under 48 hours as a single developer

The Solution

Built a full-stack geospatial analytics dashboard featuring:

  • Interactive 3D Maps, deck.gl layers with hexagonal heatmaps, arc visualizations, and scatterplot overlays rendered on MapLibre base maps
  • Client-Side ML: TensorFlow.js anomaly detection running entirely in the browser, detecting demand spikes and pricing outliers in real-time
  • Analytics Dashboard: Recharts-powered charts showing temporal trends, distribution analysis, and anomaly breakdowns
  • Filtering System: Time range, geographic bounds, anomaly type, and confidence threshold filters

Technical Implementation

Frontend Architecture

  • Next.js 14 with App Router for the application shell
  • deck.gl for WebGL-accelerated geospatial rendering (hexagon layers, arc layers, scatterplot layers)
  • MapLibre GL JS as the base map renderer (open-source, no API key required)
  • Recharts for statistical visualizations alongside the map

AI/ML Pipeline

  • TensorFlow.js for in-browser anomaly detection
  • Isolation Forest algorithm adapted for geospatial point data
  • Z-score statistical analysis for demand spike detection
  • Sliding window approach for temporal anomaly identification

Data Processing

  • GeoJSON parsing and transformation pipeline
  • Spatial indexing for efficient geographic queries
  • Web Workers for heavy computation without blocking the UI thread

Impact & Results

  • 7th place out of 15+ teams at Kazakhstan's largest hackathon
  • 83 points scored by judges (technical implementation + business value + presentation)
  • Solo entry, competed against teams of 3-5 developers
  • Fully functional demo delivered within the 48-hour constraint
  • Live deployment at geo-os.vercel.app immediately after the event

Lessons Learned

  • Scope ruthlessly under time pressure: I planned features for a 5-person team, then cut 60% before writing any code. The features I shipped were polished; the ones I cut would have been half-broken. Scoping down was the single best decision.
  • Client-side ML is viable for demos but not production: TensorFlow.js ran the anomaly detection smoothly in Chrome on a MacBook, but performance varied wildly across browsers and hardware. A real product would need a server-side inference endpoint.
  • deck.gl has a steep learning curve but enormous payoff. The first 6 hours were frustrating (coordinate systems, layer lifecycle, viewport syncing). Once it clicked, I could add new visualization layers in minutes. Worth the upfront investment.
  • Hackathons reward storytelling as much as code: Teams that placed above me had simpler tech but better narratives. The judges cared about "why does this matter for inDrive?" more than "how does the isolation forest work?"
  • Solo competing builds confidence: Knowing I placed 7th alone against full teams proved I could deliver end-to-end under extreme pressure.