Beacon is a next-generation disaster intelligence system designed to reduce response times from hours to seconds. By fusing real-time data from global sensor arrays, satellite imagery, and social signal processing, Beacon provides verified, location-aware situational awareness for emergency response teams.
Beacon's core differentiator is its Dynamic Risk Coefficient Algorithm, which processes thousands of data points to assign a unified Threat Score (0-100) to any geolocation.
The scoring engine operates on a weighted multi-modal fusion model:
-
Signal Ingestion:
- Seismic Sensors (35% Weight): Real-time USGS and EMSC feeds.
- Atmospheric Data (25% Weight): API-linked weather stations detecting pressure drops and wind anomalies.
- Satellite Telemetry (20% Weight): Thermal imaging for wildfire perimeter tracking.
- Social Verification (20% Weight): Natural Language Processing (NLP) on crowdsourced reports for impact validation.
-
Confidence Staging:
- Level 1 (Info): Raw data detection (unverified).
- Level 2 (Watch): Multi-source correlation (e.g., Seismic Alert + Social Spikes).
- Level 3 (Warning): Confirmed threat with high confidence intervals.
The Risk Coefficient (
Where:
-
$S_i$ (Severity Signal): Normalized intensity from source$i$ (e.g., Richter scale 7.0$\rightarrow$ 0.9). -
$w_i$ (Reliability Weight): Trust score of the source (e.g., USGS seismometer = 0.95, Twitter/X report = 0.35). -
$D(t)$ (Temporal Decay):$$e^{-\lambda t}$$ — Information creates entropy over time; data older than 15 minutes decays in influence exponentially. -
$P(d)$ (Proximity Factor): Inverse-square law applied to the user's geolocation relative to the disaster epicenter.
| Impact Vector | Weight ( |
Data Source |
|---|---|---|
| Geophysical | 0.95 | USGS / EMSC Seismometers |
| Atmospheric | 0.85 | NOAA / OpenWeather Satellites |
| Infrastructure | 0.70 | Traffic Cams / Power Grid Net |
| Social Sentiment | 0.40 | NLP on Geo-tagged Social Posts |
Beacon doesn't just count keywords; it measures the velocity of panic.
-
Zero-Shot Classification: Uses a distilled BERT model to categorize social posts into
Panic,Observation, orIrrelevant. -
Burst Detection: Triggers an alert only if the rate of
Panicsignals exceeds$\Delta s / \Delta t > \sigma$ (standard deviation threshold).
To prevent false positives from scattered reports, we utilize Density-Based Spatial Clustering of Applications with Noise (DBSCAN):
-
Epsilon (
$\epsilon$ ): 5km radius. - MinPoints: Minimum 3 verified sensors/reports required to form a cluster core.
- This ensures that a single faulty sensor or a localized social media rumor is treated as "Noise" and does not trigger a global
Warningstate.
The final
| Score Range | Risk Level | Status Indicator | Operational Protocol |
|---|---|---|---|
| 0 - 35 | Low | 🟢 Nominal | Monitor Only: Routine data logging. No user alerts sent. Background anomaly detection active. |
| 36 - 70 | Medium | 🟡 Elevated | Human-in-the-Loop: Anomaly detected. Admin dashboard flagged. "Watch" notification sent to local emergency ops. |
| 71 - 89 | High | 🟠 Danger | Active Warning: Confirmed threat. Instant push notifications to civilians in the 50km radius. Evacuation routes pre-calculated. |
| 90 - 100 | Critical | 🔴 Extreme | Automated Defense: Multi-vector containment protocol. Public broadcast API triggered (CAP/IPAWS). All-hands emergency mobilization. |
- 📍 Hyper-Local Intelligence: Automatically detects user location (City/Town level) and filters global noise to show only relevant threats within a 100km radius.
- ⚡ Real-Time Dashboard: "Glass cock-pit" interface showing live updates with <1s latency.
- 🛡️ Multi-Source Fusion: Aggregates disparate data streams into a single, cohesive operational picture.
- 📱 Progressive Web App: Offline-capable architecture with Service Worker supported push notifications.
- 👮 Admin Command Center: Secure interface for manual alert validation and public broadcast authorization.
- Framework: Next.js 15 (App Router)
- Styling: Tailwind CSS with Custom "Maggie" Design System (Teal/Orange/Mint)
- Animation: GSAP (GreenSock) for high-performance interactions
- Database: SQLite (
better-sqlite3) with Serverless Fallback logic (Vercel-ready) - Intelligence: Apify Actors & OpenAI Integration
-
Clone the Repository
git clone https://github.com/jrdevadattan/beacon.git cd beacon -
Install Dependencies
npm install
-
Configure Environment Create a
.env.localfile:APIFY_API_TOKEN=your_token_here NEXT_PUBLIC_VAPID_PUBLIC_KEY=your_key
-
Run Development Server
npm run dev