Sign inSign up

devprincekumar/sense-hive

By devprincekumar

•Updated 1 day ago

Lightweight MQTT data logger & dashboard: history, CSV export, LWT status, retention. amd64 + arm64

Image
Networking
Internet of things
Monitoring & observability
0

1.4K

devprincekumar/sense-hive repository overview

⁠SenseHive

Lightweight, self-hosted MQTT data logger and dashboard. Run → Add Topic → Publish → See Data.

SenseHive subscribes to the MQTT topics you add, logs every message to SQLite 24/7 (with or without the dashboard open) and shows live values, history and device status in a clean web UI.


⁠Quick start

docker run -d --name sense-hive \
  -p 5000:5000 \
  -v $(pwd)/sensehive-data:/app/data \
  --restart unless-stopped \
  devprincekumar/sense-hive:latest

Open http://localhost:5000⁠ and log in with admin / admin123 (change it under Settings → Account). The default broker is the public broker.hivemq.com; change it under Settings.

⁠Tags

TagDescription
latestLatest release, multi-arch (amd64 + arm64)
1.1.0, 1.1SenseHive 1.1.0, multi-arch
arm-pi-5Same multi-arch release image; kept for existing Raspberry Pi setups
edgeBuilt from the main branch on every commit (tested, unreleased)

One image runs on x86-64 servers and on ARM64 boards (Raspberry Pi 4/5, Jetson, Apple Silicon). Docker picks the right architecture automatically.

⁠Features

AreaWhat you get
MQTT loggingAny broker, username/password auth, wildcard topics (sensors/#, home/+/temp), JSON or plain payloads
DashboardLive updates (SSE) across all open tabs, last value per topic, last 50 entries history, CSV export
Payload renderingNested JSON and arrays are pretty-printed and wrap correctly in Chrome and Firefox
OrganizationMandatory tag and Node ID per topic; filter by tag; sort by name, tag, status, last update, entries or size; group cards by node
Device healthOptional LWT/status topic per topic: online/offline per topic and per node, counts in the navbar, pushed live
StatsEntry count and approximate size per topic, total entries and database size
Data managementRetention by age and/or max entries per topic (hourly, or "Run Cleanup Now"), SQLite WAL mode
SecurityLogin-protected UI and API, persistent random session secret, no data baked into the image
Operations/api/health and /api/status endpoints, Docker HEALTHCHECK, timezone-aware timestamps

⁠What's new in 1.1.0

  • Topic stats, tags, node grouping and LWT device status
  • Data retention and SQLite WAL mode
  • Wildcard topics are now logged
  • JSON arrays and long values no longer overflow the cards
  • Live updates reach every open browser tab
  • Multi-arch image (amd64 + arm64); paho-mqtt 2.x support
  • Home Assistant ingress support (used by the add-on)
  • No development database shipped in the image
  • v1.0 databases are migrated automatically. Keep your existing /app/data volume.

⁠Docker Compose

services:
  sense-hive:
    image: devprincekumar/sense-hive:latest
    container_name: sense-hive
    ports:
      - "5000:5000"
    volumes:
      - ./sensehive-data:/app/data
    environment:
      DEFAULT_BROKER_HOST: broker.hivemq.com   # first start only
      DEFAULT_TIMEZONE: UTC
    restart: unless-stopped

⁠Environment variables

VariableDefaultPurpose
DEFAULT_BROKER_HOST / DEFAULT_BROKER_PORTbroker.hivemq.com / 1883Broker for a new database
DEFAULT_BROKER_USERNAME / DEFAULT_BROKER_PASSWORDemptyBroker credentials for a new database
SENSEHIVE_FORCE_BROKERfalsetrue applies the DEFAULT_BROKER_* values on every start
DEFAULT_TIMEZONEUTCTimezone for a new database
RETENTION_DAYS / RETENTION_MAX_ENTRIES0 (off)Initial retention policy
RETENTION_INTERVAL3600Seconds between retention runs
SQLITE_WALtrueSet false on network filesystems (NFS/SMB)
SECRET_KEYrandom, persistedSession secret
DB_PATH/app/data/iot_dashboard.dbDatabase location

⁠Home Assistant

HAOS / Supervised users can install the add-on in one click: it opens in the sidebar, connects to the Mosquitto add-on automatically and stores data in Home Assistant backups. See https://github.com/855princekumar/sensehive-ha-addon⁠

⁠Quality

Every image is built by CI after the full regression suite passes (73 tests on Python 3.9 to 3.13, including an end-to-end run against a real Mosquitto broker), plus a container health check and a pip package smoke test.

Tag summary

Content type

Image

Digest

sha256:bf606c953…

Size

49.5 MB

Last updated

1 day ago

docker pull devprincekumar/sense-hive