Documentation
Complete guide to installing, configuring and extending OpenWar Intelligence — the open source real-time military C4ISR dashboard.
Installation
OpenWar Intelligence is a single HTML file. No build tools, no package manager, no server-side dependencies. There are three ways to deploy it:
Option 1: Direct Download
The simplest method. Register and download the HTML file, then open it in your browser.
# Download the file
# Open monitor-guerra.html in any modern browser
# That's it — the dashboard is running
Option 2: Local HTTP Server (Recommended)
For the best experience with CORS proxy support, serve the file via a local HTTP server:
# Using Python (included batch file)
python -m http.server 8080
# Using Node.js
npx serve -p 8080
# Using PHP
php -S localhost:8080
# Then navigate to http://localhost:8080/monitor-guerra.html
AVVIA-MONITOR.bat to automatically start a Python HTTP server on port 8080 and open the dashboard in your default browser.Option 3: Git Clone
git clone https://github.com/federicocappa/openwar-intelligence.git
cd openwar-intelligence
python -m http.server 8080
Quick Start (5 Minutes)
- Register and download
monitor-guerra.html - Place it in any folder on your computer
- Open in Chrome, Firefox, Edge, or Safari
- The dashboard loads with simulated data immediately
- Real data begins streaming in after ~10 seconds (if CORS proxies are available)
System Requirements
| Component | Minimum | Recommended |
|---|---|---|
| Browser | Chrome 90+, Firefox 88+, Edge 90+, Safari 15+ | Latest Chrome or Firefox |
| RAM | 2 GB available | 4 GB available |
| Screen | 1280x720 | 1920x1080 or larger |
| Network | Any internet connection | Broadband for real-time feeds |
| Disk | 1 MB (single file) | 5 MB (with assets) |
Architecture Overview
OpenWar Intelligence follows a single-file architecture philosophy. Everything — HTML structure, CSS styling, JavaScript logic, data models, and SVG assets — lives in one .html file of approximately 4,000 lines.
File Structure
openwar-intelligence/
├── index.html # Landing page
├── monitor-guerra.html # Main C4ISR dashboard
├── download.html # Registration & download
├── docs.html # This documentation
├── openwar-logo.svg # Full brand logo
├── openwar-icon.svg # Icon/favicon
├── social-media-kit.html # Social media assets
├── sitemap.xml # SEO sitemap
├── robots.txt # Crawling directives
└── AVVIA-MONITOR.bat # Windows launcher
Data Flow Architecture
The dashboard follows a multi-source data fusion pipeline:
External APIs (FR24, OpenSky, ADSB-X, NASA FIRMS)
↓ via CORS Proxy Chain (allorigins → corsproxy → codetabs)
↓ Graceful fallback to simulated data
↓
Data Parsing & Normalization
↓
Feature Groups (Leaflet.js FeatureGroups)
├── Aircraft Layer (117+ assets)
├── Ships Layer (49+ vessels)
├── Satellites Layer (15+ objects)
├── Conflict Zones (12 areas)
├── SIGINT Layer (A2/AD, GPS jamming)
├── Nuclear Layer (SSBNs, silos)
├── Maritime Layer (chokepoints)
├── FIRMS Layer (thermal hotspots)
├── Heatmap Layer (combat activity)
└── Fusion Alert Layer (cross-correlation)
↓
Neural Network (12-24-1, online learning)
↓
Predictive Timeline (1h-24h)
Configuration
Data Sources
| Source | Data Type | Update Interval | Fallback |
|---|---|---|---|
| FlightRadar24 | Military aircraft positions | 30s | OpenSky |
| OpenSky Network | ADS-B aircraft data | 30s | ADSB Exchange |
| ADS-B Exchange | Aircraft positions (backup) | 30s | Simulation |
| NASA FIRMS | VIIRS thermal anomalies | 5min | Cached hotspots |
| MarineTraffic | AIS vessel positions | 60s | Simulation |
| RSS/OSINT (19 feeds) | Geopolitical news | 5min | Cached articles |
CORS Proxy Chain
Since the dashboard runs client-side, it uses a triple-fallback CORS proxy chain to access external APIs:
// Primary proxy
https://api.allorigins.win/raw?url=
// Fallback 1
https://corsproxy.io/?
// Fallback 2
https://api.codetabs.com/v1/proxy?quest=
// Final fallback: simulated data generation
Map Tile Layers
| Layer | Provider | Best For |
|---|---|---|
| Dark Matter | CartoDB | Default — optimal for military overlay visibility |
| Satellite | ESRI World Imagery | Terrain analysis, base identification |
| Terrain | OpenTopoMap | Elevation, terrain features, topography |
Neural Network Configuration
The prediction engine uses a 3-layer feedforward neural network implemented in pure JavaScript. Corrected 2026-09-09: the block below previously stated a sigmoid hidden layer, a 0.01 learning rate and 60-second retraining. All three were wrong.
Architecture: 12 inputs → 24 hidden (ReLU) → 1 output (sigmoid)
Trainable parameters: 337 (312 weights + 25 biases)
Learning rate: 0.05
Training data: 37 curated conflict events, 2021-02-01 → 2025-02-01
Validation set: none. The reported loss is training loss on those 37 events.
Online learning: DISABLED 2026-09-09 — the loop retrained the network on its
own output (prediction + trend), which is a confirmation loop, not
learning. Predictions still refresh every 60 s because the live input
features change; the weights no longer move.
Features: troop movements, air activity, naval presence,
diplomatic signals, economic indicators, FIRMS data
How to read the output. With 337 parameters fitted to 37 examples and no held-out set, this is an interpolation over a curated table, not a forecast with a measured hit rate. Treat the percentage as a restatement of the input features, and read the features themselves.
Intelligence Modules Reference
Air Domain Module
Tracks military aircraft using multi-source data fusion. The module maintains a database of 117+ fallback aircraft across 27 nations with 33 callsign prefixes and 10 ICAO hex ranges for automatic military identification.
Aircraft are classified into 6 types with SVG silhouettes: fighter, bomber, transport, reconnaissance, tanker, helicopter. Technical specs are available for 50+ specific models including range, ceiling, payload, and crew.
SIGINT / ELINT Module
Full-spectrum electronic warfare monitoring: 29 A2/AD systems, 7 GPS jamming zones, 10 EW platforms, 9 radar emissions, 7 cyber warfare operations, and 9 EW spectrum bands. Visualizes denied-area environments with bubble overlays, frequency spectrum analysis, and real-time threat classification.
Nuclear Domain Module
Strategic nuclear force monitoring: 10 SSBN patrol zones with missile/warhead details, 12 ICBM silos with regiment data, 8 nuclear bombers (airborne/alert/ground status), 12 C3 command nodes, and 6 nuclear treaties with compliance status. Full posture assessment for 9 nuclear-armed nations with deployed/reserve/retired inventory and first-use doctrine.
Maritime Domain Module
Monitors 49+ naval vessels classified into 6 types: carrier, destroyer, cruiser, frigate, submarine, amphibious. Each type has an SVG silhouette and spec sheet. Tracks 9 global maritime chokepoints with width, depth, oil flow data, blockade risk analysis. Includes 9 naval deployments and 8 recent maritime incidents.
Economic Warfare Module
Monitors 8 sanctions regimes with SWIFT access and asset freeze tracking, 9 strategic commodities with price changes and war impact analysis, and 8 critical supply chains with vulnerability scoring and alternative source mapping. Weighted economic threat index integrates all indicators.
FIRMS / Thermal Intelligence Module
Integrates NASA FIRMS VIIRS satellite data to detect thermal anomalies that may indicate military activity (fires, explosions, artillery, rocket launches). Each hotspot includes direct links to satellite imagery providers:
- Sentinel Hub — High-resolution multispectral imagery
- Copernicus Browser — EU Earth observation data
- NASA FIRMS Map — Official thermal anomaly viewer
- Google Satellite — Commercial satellite imagery
Fusion Alert Engine
The cross-correlation engine generates an alert when several independent disciplines converge on the same conflict zone. Convergence is measured as a great-circle radius of 555 km around the zone centroid — isotropic, so the catchment is the same size in the Baltic and in the Gulf.
| Signal | Source | Max weight | Status |
|---|---|---|---|
| AIR | Military aircraft within 555 km | 1.0 | live |
| SHIP | Naval vessels within 555 km | 1.0 | live |
| ML-PRED | Neural network probability > 0.6 for the zone | 1.0 | live |
| A2AD | A2/AD systems within 555 km | 1.0 | curated dataset |
| THERMAL | ≥2 FIRMS thermal hotspots within 555 km | 1.0 | live |
| NAVAL | Naval deployments within 555 km | 1.0 | curated dataset |
| CYBER | Cyber operations active within the last 30 days | 1.0 | curated dataset |
| AIR-BRIDGE | Airlift surge | — | disabled: no dated sortie series |
| NUCLEAR | Posture change | — | shown as global context, not counted per zone |
Alert levels: ELEVATED (3+ disciplines), HIGH (4+), CRITICAL (5+). Each alert is a sonar-pulse marker on the map. The count is disciplines, not detections: four A2/AD batteries near one zone are one A2AD signal, not four.
Correction, 3 September 2026. Until this date the engine counted A2AD and NAVAL once per element rather than once per discipline, applied a static level ≥ 4 nuclear test that fired on every zone permanently, and measured proximity as a Manhattan distance in degrees — a diamond whose east–west reach shrank with cos(lat), from 556 km at the equator to 295 km in the Baltic and 144 km in the Arctic. The combined effect was that four of the twelve zones carried a permanent alert level derived from no live observation at all, Syria/Lebanon reaching CRITICAL on a single discipline. The table above describes the engine as it now runs.
API Reference
OpenWar Intelligence exposes several JavaScript functions for programmatic interaction:
| Function | Description |
|---|---|
focusMapOnAsset(type, id) | Zoom and flash a specific asset on the map |
setTimeline(hours) | Set predictive timeline (0, 1, 3, 9, 12, 24) |
switchTileLayer(name) | Switch map tiles (dark, satellite, terrain) |
flashMarkerAt(lat, lng) | Flash a temporary marker at coordinates |
toggleAssetPreview(type, id) | Show/hide asset spec card in sidebar |
getAircraftSpecs(model) | Get technical specs for an aircraft model |
getShipSpecs(type) | Get technical specs for a ship class |
Deployment Guide
GitHub Pages (Free)
1. Fork the repository on GitHub
2. Go to Settings → Pages
3. Select "main" branch, root directory
4. Your dashboard is live at username.github.io/dashboard/
Netlify (Free Tier)
1. Connect your GitHub repo to Netlify
2. No build command needed
3. Publish directory: /
4. Deploy — instant global CDN
Self-Hosted
# Nginx
server {
listen 80;
server_name openwar.yourdomain.com;
root /var/www/openwar;
index index.html;
location / { try_files $uri $uri/ =404; }
}
# Apache
DocumentRoot "/var/www/openwar"
DirectoryIndex index.html
Contributing
OpenWar Intelligence is open source and welcomes contributions from developers, analysts, researchers, and OSINT specialists.
How to Contribute
- Fork the repository on GitHub
- Create a feature branch:
git checkout -b feature/new-module - Make your changes
- Test in multiple browsers
- Submit a Pull Request with a clear description
Contribution Ideas
- Add new data sources (AIS providers, weather APIs, conflict databases)
- Expand aircraft/ship databases with more models and nations
- Improve neural network with additional training events
- Add new intelligence modules (cyber, space weather, economic)
- Translate the interface (currently English, Italian labels)
- Optimize performance for mobile devices
- Add unit tests for data parsing functions
Changelog
Version 5.0 — May 2026 (C4ISR EXPANDED)
- SIGINT expanded: 29 A2/AD systems, 7 GPS jamming zones, 10 EW platforms, 9 radar emissions, 7 cyber ops, 9 spectrum bands
- Nuclear monitor: 10 SSBN patrols, 12 ICBM silos, 8 nuclear bombers, 12 C3 nodes, 6 treaties
- Maritime chokepoints: 9 detailed profiles with blockade risk, 9 naval deployments, 8 incidents
- Economic warfare: 8 sanctions regimes, 9 commodities, 8 supply chains, weighted threat index
- Fusion Alert Engine expanded to 9 signal types (added NAVAL, CYBER, NUCLEAR)
- Full domain: openwarintelligence.org with landing page, docs, download portal
- SEO: structured data, FAQ schema, Open Graph, sitemap, robots.txt
- Social media launch: 5 platforms, 30-day editorial calendar
Version 2.0 — May 2026
- Expanded to 117 aircraft, 49 ships, 27 nations
- Added Fusion Alert Engine with sonar-pulse markers
- Integrated NASA FIRMS thermal intelligence
- Neural network prediction engine (12-24-1 architecture)
- Aircraft/ship model preview cards with SVG silhouettes
- Satellite imagery links (Sentinel Hub, Copernicus, Planet Labs)
- Combat heatmap layer
- Predictive timeline 1h/3h/9h/12h/24h
- 19 OSINT RSS feeds
- Click-to-map navigation from sidebar
Version 1.0 — March 2026
- Initial release with 55 aircraft, 24 ships
- Basic Leaflet map with military overlays
- RSS news aggregation
- Nuclear domain monitoring
- SIGINT/ELINT layer