r/Python • u/AutoModerator • 18d ago
Showcase Showcase Thread
Post all of your code/projects/showcases/AI slop here.
Recycles once a month.
16
Upvotes
r/Python • u/AutoModerator • 18d ago
Post all of your code/projects/showcases/AI slop here.
Recycles once a month.
1
u/Prestigious_Act3077 12d ago
Velocity: a keyless FastAPI service that fuses 15 live geospatial feeds into cited incidents (and runs as an MCP server)
What My Project Does
Velocity is a self-hostable OSINT console. A FastAPI backend ingests around 15 live open feeds (ADS-B aircraft, AIS vessels, CelesTrak satellites, USGS quakes, GDELT conflict events, GPSJam-method jamming, Sentinel-1 SAR dark-vessel detection) and correlates them server-side instead of leaving you to eyeball six tabs. When signals converge, say a vessel goes AIS-dark next to a GPS-jamming cell and a spoofed track in the same place and time, it promotes that into a single incident with a cited summary. A Vite/React/CesiumJS front end renders it on a 3D globe over websockets. The whole thing runs keyless for the core feeds with one
docker compose up. It also exposes a Model Context Protocol server (MCP Python SDK), so an AI agent can query the live feeds and get bounded JSON back.Some Python-specific decisions worth discussing: there's no database in Phase 1. Live state is an in-process bounded observation store plus a disk tile cache, and only the 7-day position-track replay buffer persists (SQLite). That's what makes it a one-command run. Postgres/PostGIS/TimescaleDB is the planned Phase-2 upgrade. 940+ tests cover unit, route, and MCP-degradation paths (backend down returns a structured error; Ollama absent returns raw JSON rather than crashing the tool call).
Target Audience
A single analyst or hobbyist who wants a fused live picture on their own hardware, not a production, multi-tenant deployment. It's deliberately single-operator: one optional API key, no accounts or roles, most state in memory (restart means incident history is gone). Treat it as a serious personal/research tool, not a hardened service. The default 2D map runs on integrated graphics; the optional 3D-satellite mode is a VRAM hog.
Comparison
Single-feed sites do one thing well (Flightradar24 for planes, MarineTraffic for ships, GPSJam for jamming), but you're the one holding six tabs and correlating in your head. Velocity goes after the seam between feeds: the fusion/correlation layer is the product, not the individual layers. Versus a Grafana or Kepler.gl dashboard, it's not just plotting points; it runs cross-domain correlation rules and emits cited incidents. And unlike most "live data" MCP servers that wrap a single API, it sits on an already-correlated multi-feed picture and returns token-bounded JSON so an agent can sweep the planet in a few hundred tokens.
Keyless core, Apache-2.0, repo in comments. I'd genuinely like a critique of the in-memory-first choice and the correlation approach.
https://github.com/AndrewCTF/osint-geospatial-console