liteScope v1.0.0 π
The first stable release of liteScope β a lightweight, self-hosted dashboard for monitoring MeshCore networks. It ingests MQTT telemetry from one or more brokers, stores it in SQLite, and serves a real-time React UI with live packet feeds, node analytics, channel decryption, maps, and observer stats.
β¨ Highlights
- Real-time everything β live packet feed over WebSocket, animated packet-trace playback, and a live node map.
- Deep packet inspection β colored hex dump with per-section highlighting, per-observer raw bytes and routing paths, and field-by-field decoded payloads.
- Network analytics β RF stats, activity timelines, hop/distance analysis, geographic coverage, and a new Hash Usage Matrix for spotting node-prefix collisions.
- Channel decryption β add AES-128 keys or derive them from a passphrase, then browse decrypted message history.
- Self-hosted & private β runs entirely on your infrastructure; nothing leaves your network.
π Features
Live monitoring
- Live packet feed β filter by type, route, channel, or minimum observer count; pause/resume; expandable per-observation sub-rows with per-observer hex and path data.
- Packet detail sidebar β colored hex dump with byte offsets and section hover-highlighting, field breakdown table, and field-specific decoded rendering. Click any observation to switch to that observer's perspective.
- Live map β animated packet-trace playback with VCR controls (pause, replay, speed, timeline) and theme-aware tiles.
Nodes & observers
- Node explorer β per-node RF analytics (RSSI / SNR distributions), last-heard filters, role tabs, and a full-height location map.
- Observer dashboard β per-observer packet timelines, SNR charts, and packet-type breakdowns.
Channels
- Channel decryption β AES-128 keys or SHA-256-derived passphrase keys; decrypted message history; deep-linked channel URLs with working back navigation.
Analytics
- Network analytics β overview cards, activity heatmap, RF stats, top nodes/observers, packet-type distribution; deep-linked tabs (
/analytics/rf,/analytics/scope, β¦). - Hash size & adoption β 1/2/3-byte hash distribution over time and multi-byte adopters.
- Hash Usage Matrix β a 16Γ16 first-byte prefix grid with a 1/2/3-byte collision selector, per-cell node tooltips, and a click-through detail panel for inspecting prefix collisions.
- Distance / hop analytics β link-type breakdown, hop distribution, longest paths, and pairwise geographic coverage.
Maps & UX
- Node map β Leaflet markers with role-colored SVG icons, type-aware clustering, byte-size filter, and hash-prefix labels; theme-aware tiles (OSM light / CARTO dark).
- Decoder β paste raw hex packets for one-off decoding.
- Material 3 Expressive light/dark theme, persisted per browser.
- i18n β English, Polish, and German (auto-detected, persisted), with the rest of the UI ready for more.
- Fully responsive β charts, maps, and panels adapt from mobile to desktop.
π§ Reliability & performance
- Concurrency-safe store β decoded payloads are computed once under the write lock, eliminating a data race on hot read paths.
- Faster analytics β version-keyed result caching for heavy endpoints, an index-aware node RF lookup, and bounded memory for pairwise geographic distance.
- Live node indexing β node packet lists and RF stats now reflect packets ingested after startup, not just those present at boot.
- Configurable origins β new
allowedOriginssetting drives CORS and WebSocket origin checks (defaults to["*"]).