Skip to content

Releases: lobrzut/netdash

v1.3.140

Choose a tag to compare

@lobrzut lobrzut released this 24 Jun 18:38

v1.3.140

  • Discover services on any port (NETDASH_SCAN_ALL_PORTS=true): until now the adaptive background discovery probed each host on only 11 ports (TCP_DISCOVERY_PRIMARY_PORTS), and safe mode on ~6 — so a service on e.g. 8123, 32400 or 9090 was never found by the background loop. Now, once a host is detected live, it is deep-probed against a comprehensive ~190-port service list (scanner.SERVICE_PORTS). Only live hosts (a few dozen) are deep-probed, gated by the existing semaphore, so there is no /24-wide flood — safe on a NAS. Works for the manual scan too. Enabled by default in the QNAP compose. Verified end-to-end: a scan found a service on port 8123.

Image: ghcr.io/lobrzut/netdash:1.3.140 and :latest

v1.3.139

Choose a tag to compare

@lobrzut lobrzut released this 23 Jun 13:49

v1.3.139

  • Network tile now fits the widget: its content exceeded the widget max-height: 360px and the footer ("last scan") was clipped. Removed the weakest element — the "discovered / 7 days" sparkline (thin data, usually a single bar) — leaving LAN + WAN + link latency + last scan. The tile also scrolls now if its content ever grows, instead of clipping the footer.

Image: ghcr.io/lobrzut/netdash:1.3.139 and :latest

v1.3.138

Choose a tag to compare

@lobrzut lobrzut released this 23 Jun 13:35

v1.3.138

  • Network tile — link latency instead of the category donut: the "services by category" donut+legend (which overflowed the tile) is replaced by link latency — TCP connect to 1.1.1.1 (Cloudflare) and 8.8.8.8 (Google), shown in ms with a colour dot (green < 40 ms, amber < 120 ms, red slow/down). Measured server-side, cached 60s, works even when ICMP is blocked.
  • WAN — city & country instead of ISP: under the public IP we now show the location (e.g. Zurich, Switzerland) rather than the ISP name.

Image: ghcr.io/lobrzut/netdash:1.3.138 and :latest

v1.3.137

Choose a tag to compare

@lobrzut lobrzut released this 23 Jun 10:34

v1.3.137

  • Fix — API vault in the narrow dashboard tile: key cards were vertically compressed (default flex-shrink inside the fixed-height widget body) and their content overlapped. They now use flex-shrink: 0 (cards keep their height, the list scrolls), and the action buttons wrap to their own row below the key text when the column is narrow. Masked dots no longer break mid-string.
  • Notes as list rows: square note tiles are now full-width rows (title + 2-line preview), much more readable in the narrow widget, with a subtler colour tint per note label.

Image: ghcr.io/lobrzut/netdash:1.3.137 and :latest

v1.3.136

Choose a tag to compare

@lobrzut lobrzut released this 23 Jun 09:07

v1.3.136

  • Stop a running network scan: the scan bar now has a Stop button. It cancels the background scan task (POST /api/scan/{id}/cancel), sets the job status to cancelled, and clears the bar.
  • Network tile — real country flag: emoji flags render as plain text (e.g. CH) on Windows, so the WAN section now uses a flag image from flagcdn.com keyed by country code, with a text fallback.
  • API vault — revealed key fits the card: a revealed long key no longer overflows; it is shown in a bounded, scrollable monospace box.
  • i18n: stop-scan strings for PL / EN / DE / UK.

Image: ghcr.io/lobrzut/netdash:1.3.136 and :latest

v1.3.135

Choose a tag to compare

@lobrzut lobrzut released this 23 Jun 08:44

v1.3.135

  • Fix (UI): the Brain stats URL input was the default narrow width and clipped long URLs (e.g. showed …7860/s). It is now full panel width with a monospace font, so the whole URL is visible.

Image: ghcr.io/lobrzut/netdash:1.3.135 and :latest

v1.3.134

Choose a tag to compare

@lobrzut lobrzut released this 23 Jun 03:44

v1.3.134

Network tile (optional, off by default)

  • New dashboard widget. Enable in Settings -> Appearance. Shows:
    • LAN: IP, gateway, subnet, devices online/total, last scan.
    • WAN: public IP + ISP + country/city (GeoIP via ip-api.com, server-side, cached ~1h) with a country flag.
    • Charts: services-by-category donut and a 7-day discovery sparkline.
  • Served by the auth-gated, 60s-cached GET /api/network/info.
  • Disable the external GeoIP call with NETDASH_NETWORK_WAN_LOOKUP=false (keeps LAN-only).

"Update now" via Watchtower HTTP API

  • The portal's Update now button now triggers Watchtower's POST /v1/update (Bearer token) instead of requiring docker.sock mounted into the LAN-exposed portal. This is the safe way to do in-app updates on QNAP.
  • Set NETDASH_WATCHTOWER_API_URL + NETDASH_WATCHTOWER_API_TOKEN (matching Watchtower's WATCHTOWER_HTTP_API_TOKEN). The QNAP compose and .env.example are updated (127.0.0.1:8080, WATCHTOWER_HTTP_API_UPDATE).

i18n

  • Network tile strings for PL / EN / DE / UK.

Image: ghcr.io/lobrzut/netdash:1.3.134 and :latest

v1.3.133

Choose a tag to compare

@lobrzut lobrzut released this 23 Jun 03:09

v1.3.133

Optional Brain stats tile (off by default)

  • Re-enabled the Brain knowledge-stats tile. Enable it in Settings -> Appearance and set a Brain /stats endpoint URL that returns knowledge counts (notes, sessions, library_docs, code_files, graph_nodes, last_session_at, activity_7d). The tile then shows live numbers.
  • Served through the auth-gated, 60s-cached server proxy GET /api/brain/stats (the browser never calls the Brain host directly).
  • show_brain stays false by default — users without a Brain endpoint see no change.

i18n

  • Added Brain tile translations for EN / DE / UK (previously Polish only).

Image: ghcr.io/lobrzut/netdash:1.3.133 and :latest

v1.3.132

Choose a tag to compare

@lobrzut lobrzut released this 23 Jun 02:48

v1.3.132

UI

  • Visible brand/icon watermark on every tile — pinned cards and emoji/letter tiles now included (no more blank backgrounds). Restored the tilted/diffuse brand watermark, un-throttled pinned-card watermarks, and bumped opacity for thin-line logos.

Security hardening (since 1.3.130)

  • Login brute-force guard: POST /api/auth/login limited to 5 attempts / 5 min per IP+user (429 + Retry-After).
  • UI-set admin password no longer overwritten on restart.
  • Swagger /docs off by default (NETDASH_DOCS_ENABLED=true to enable).
  • python-jose -> PyJWT (CVE-2024-33663 / CVE-2024-33664); explicit cryptography pin.
  • SSRF guard for server-side fetches (blocks cloud-metadata endpoints).

Discovery

  • Find ICMP-blocked hosts in normal mode (e.g. Proxmox at .200) via TCP sweep; stop truncating stat labels.
  • Expanded brand/type recognition (UniFi, QNAP, printers, cameras, remote-desktop tools).

Deployment

  • QNAP via Dockge (Container Station stays as the Docker engine).
  • CI test gate (ruff + pytest) before the multi-arch build.

Image: ghcr.io/lobrzut/netdash:1.3.132 and :latest

v1.3.130 - favicon watermarks for auto-discovered services

Choose a tag to compare

@lobrzut lobrzut released this 12 Jun 22:30

Fix missing background watermark icons on TCP auto-discovered service tiles. Server-side favicon fetch after adaptive discovery, port-brand fallbacks, MeshCentral mapping. Image: ghcr.io/lobrzut/netdash:1.3.130 and :latest