Real-time Community Information System
Markus van Kempen
A real-time system to eliminate travel uncertainty for the Englishtown ↔ Jersey Cove ferry crossing in Nova Scotia, Canada.
Live AIS position & real-time status updates
Local weather station + Environment Canada alerts
Community calendar, garbage schedules, announcements
Physical WLED matrix for roadside status
FerryLight merchandise with Stripe payments
Local business directory for visitors
Signal to Screen: Complete data flow from AIS receiver to user devices
Ferry Status • Weather Conditions • Community Events
WLED Matrix Displays & Road Signage — Designed for residents who prefer physical indicators over mobile apps
| Layer | Technologies |
|---|---|
| Frontend | React 18, PWA, Leaflet Maps, Styled Components |
| Backend | Node.js, Express.js, WebSocket |
| Integration | Node-RED, MQTT, REST APIs |
| Data | PostgreSQL, Docker, Docker Compose |
| Infrastructure | Traefik, Let's Encrypt SSL, VPS |
Problem: AIS tracking shows ferry position but can't measure queue length at terminals.
Solution: Deploy LoRaWAN-connected Bluetooth/WiFi sniffers at both ferry ports.
Goal: Accurate wait time estimation based on device density in the queue.
Fully Dockerized multi-container environment
Git-based deployment with auto-build pipeline
Auto-recovery, health checks, uptime alerts
FerryLight System Briefing
ferrylight.online
Markus van Kempen • June 2026