Open Source · Self-Hosted

Road status your community can trust

StormPath gives residents, travelers, and first responders a shared, live view of road conditions — from snow and ice to accidents and closures.

❄️ Snow / Ice 🌲 Blocked Road 🚗 Accident 🚧 Road Closure 🚁 LZ Active ✓ Clear
Snow — Main St
Blocked — Oak Rd
Live Updates
Real-Time
Server-Sent Events streaming
8+
Incident types supported
Waze
CIFS feed integration
100%
Self-hosted, your data
Features

Everything your community needs

From icy back roads to downed power lines, StormPath gives everyone a single place to see and share what's happening on the roads.

🗺️
Live Map
Color-coded road overlays update instantly as reports come in — no page refresh needed. Built on Mapbox GL with smooth, mobile-friendly interactions.
📡
Real-Time Streaming
Server-Sent Events push delta updates to every connected browser the moment a report is submitted. No polling, no lag.
Confirmed Reports
Reports from first responders and admins are automatically marked confirmed, visually distinguished on the map for at-a-glance trust.
🔐
Passkey & TOTP Auth
Modern passwordless sign-in with WebAuthn passkeys, plus TOTP two-factor for users who prefer an authenticator app.
🟠
Waze CIFS Feed
Confirmed incidents are automatically published to a Waze CIFS-compatible JSON feed, putting your road closures on Waze's map in minutes.
👥
Role-Based Access
Three roles — User, First Responder, and Admin — with approval-gated registration so you control who can post reports.
📱
Mobile-First Design
Designed for use in the field. The full map, report panel, and FR quick-report flow all work flawlessly on a phone screen.
🏠
Self-Hosted
Deploy with Docker in minutes. Your data stays on your infrastructure — no SaaS fees, no telemetry, no third-party data sharing.
🔒
IP Access Lists
Optionally restrict report submission to known IP ranges — useful for government networks or emergency management intranets.

Built for the field

When seconds matter, the last thing a first responder needs is a slow UI. StormPath's FR Quick Report lets you submit a confirmed incident in two taps.

  • 📡
    GPS auto-selects the nearest road the moment FR mode is activated.
  • 🗺️
    Intersection-to-intersection road coverage displayed automatically so the segment is precise.
  • Tap an incident type to submit — no extra buttons, no form to fill out.
  • All FR reports are automatically marked confirmed and flow directly to the Waze feed.
  • 🚁
    Dedicated LZ Active status for helicopter landing zone operations.
⚡ Quick Incident Report Cancel
📍 State Route 63 (Main Street)
📡 Location acquired
Oak Ave → Walnut St
Notes (optional)
Vehicle vs. guardrail, blocking right lane
Tap to submit instantly:
🚗 Accident
🚧 Closure
🚁 LZ Active
🌲 Blocked
❄️ Snow
🧊 Ice
How It Works

Up and running in minutes

StormPath is designed to be deployed by a county, township, or emergency management office with minimal technical overhead.

1
Deploy with Docker
Pull the image, drop in your road network GeoJSON and Mapbox token, and start the container. TLS is handled automatically via Caddy.
2
Register your admin account
Set ADMIN_USERNAME and ADMIN_PASSWORD env vars. The first account is seeded as admin automatically.
3
Share the URL
Give residents and first responders the link. New accounts pend approval so you stay in control. The Waze CIFS feed URL is ready immediately.

Your roads. Your data.

StormPath runs entirely on infrastructure you control. There's no cloud subscription, no usage limits, and no data leaving your county.

  • 🐳
    Single Docker image — includes FrankenPHP, Caddy, and SQLite with Litestream backup.
  • 📦
    No external database required. SQLite with WAL mode handles high concurrent reads.
  • 🔄
    Litestream streams live SQLite backups to S3-compatible storage.
  • 🌐
    Automatic TLS via Let's Encrypt. No certificate management required.
# Pull and run docker pull ghcr.io/nilber79/stormpath-core:latest # Set your env vars SERVER_NAME=roadstatus.yourcounty.gov ADMIN_USERNAME=admin ADMIN_PASSWORD=changeme MAPBOX_TOKEN=pk.eyJ1IjoiLi4u # Start docker run -d \ --env-file .env \ -v ./data:/app/public/data \ -p 443:443 \ ghcr.io/nilber79/stormpath-core:latest
Open Source

Ready to put StormPath to work?

StormPath is free, open-source software. Deploy it for your county, contribute to the project, or fork it for your own needs.

View on GitHub → See a Live Demo