Interactive case study
Active — 2026 build window

Opsdeck

Real-Time Workspace Command Center

A live operations dashboard unifying project kanban, delivery analytics, roadmap, portfolio health checks, a knowledge base, Docker fleet telemetry, and working automation controls in one installable app.

Headline outcome
Turned a multi-project workspace into one glanceable, operable surface — no demo data, everything live.
Business Outcome: Replaced scattered terminal checks and SSH sessions with one live control surface for projects, containers, automations, and site health.
40+
Containers Live-Monitored
67
Automated E2E Checks
<1s
Cold First Paint
Node.js 22Vanilla JSSVG ChartsPWADockersystemd
Verified Project Visual
Opsdeck command center overview with live stats, activity feed, and service strip
Click to expand high-res screenshot

Project snapshot

Production
Duration
Active — 2026
Why it matters
A zero-dependency Node backend and a hand-built SVG interface, verified by a 67-check end-to-end suite before every milestone.
Role focus
  • System architecture design
  • Lead fullstack engineering
  • AI automation workflow routing
  • Containerized security isolation
  • High-availability infrastructure tuning
Overview

Why this system had to exist

I run a workspace with a dozen active projects, forty-plus containers across hosts, scheduled jobs, and client sites that all need watching. The state of that world lived in terminal commands: container status here, timer schedules there, uptime checks somewhere else. Opsdeck started from a simple demand I set for myself — a dashboard where every number on screen is real, every control does something, and the whole thing installs on a phone.

Moment 01

A live operations dashboard unifying project kanban, delivery analytics, roadmap, portfolio health checks, a knowledge base, Docker fleet telemetry, and working automation controls in one installable app.

Moment 02

A zero-dependency Node backend and a hand-built SVG interface, verified by a 67-check end-to-end suite before every milestone.

Moment 03

Replaced scattered terminal checks and SSH sessions with one live control surface for projects, containers, automations, and site health.

Stage 1 of 5
Continue
Problem

What was breaking down

Dashboards are easy to fake and hard to make honest. Most internal dashboards decay into static mockups because wiring live infrastructure — container stats, service managers, log parsers, health probes — is the unglamorous half of the work. The specific challenges were querying Docker and systemd safely from a web process, keeping cold loads fast when a stats sweep can take seconds, persisting board state without a database, and exposing the tool securely to mobile without opening a single public port.

Moment 01

Fleet Visibility

Ad-hoc terminal commands per host

Moment 02

Scheduled Jobs

Remembered schedules, silent failures

Moment 03

Access

Desktop terminal sessions only

Stage 2 of 5
Constraint map
Solution

The breakthrough and implementation path

I built a loopback-only Node 22 server with collectors for the container runtime, service scheduler, log archives, and live HTTP health checks, plus JSON-file stores for the kanban and roadmap. The frontend is dependency-free JavaScript with hand-drawn SVG charts, crosshair tooltips, a command palette, keyboard navigation, and slide-over detail drawers. It ships as an installable PWA over a private mesh network with TLS, and an 8-module interface covers overview, projects, analytics, roadmap, portfolio, knowledge base, infrastructure, and automations.

Moment 01

The unlock was treating the operating system itself as the database. Container state, scheduler timers, session history, and git metadata already exist as structured, queryable truth — the backend's job is validation, caching, and shaping, not storage. A thin zero-dependency Node server with per-collector caches made every module live without a heavy stack, and racing slow collectors against a deadline kept first paint under a second even on cold caches.

Moment 02

Zero-dependency Node 22 API

Moment 03

OS-as-database Collectors

Stage 3 of 5
Build system
Results

Before vs after, without the clutter

Outcome metrics stay visible while comparison details are compressed into large readable cards instead of long stacked panels.

Before

Fleet Visibility

Ad-hoc terminal commands per host

After

Optimized resolution

One live view with drill-down to logs

Stage 4 of 5
Measured impact
Architecture

Layered architecture with one consistent layout

Explore the operating layers and the shipped feature set in the same wider content frame used across the full case study.

Active layer

Zero-dependency Node 22 API

Live Docker fleet view — per-container CPU, memory, health, port maps, and log tails
Ship 01

Live Docker fleet view — per-container CPU, memory, health, port maps, and log tails

Ship 02

Working automation controls that start and stop real scheduled jobs, with journal drill-downs

Ship 03

Server-persisted kanban and roadmap enriched with live git branch and commit state per project

Ship 04

Click-through detail drawers on every data point: containers, deploys, sessions, and site checks

Stage 5 of 5
Architecture live