Skip to content
Back to work
Next.js / 3D / DevOpsv1.0.0 · personal

Mission Control

One screen for the health of every app and job you run

Private project — walkthrough on request

Mission Control unified status dashboard
3
Platforms unified
~2 sec
To spot a failure
1-click
Log triage
30s
Auto-refresh
Mission Control screenshot 2
Mission Control screenshot 3
Mission Control screenshot 4

The problem

Production analytics rarely live in one place — a few Shiny apps on a corporate Posit Connect server, scheduled Quarto ETL jobs, personal apps on shinyapps.io, deployments on Vercel — each with its own console. Checking on everything meant logging in three times and digging through run histories, so failures got caught late and root cause took too long to find.

Architecture

01 · Sources
  • Posit Connect
  • shinyapps.io
  • Vercel
02 · Normalize
  • Shared model
  • Per-source adapters
03 · Classify
  • Healthy · Warning
  • Failed · Idle
04 · Render
  • Category grid
  • 3D orbital map
05 · Alert
  • Desktop · sound
  • Tab/favicon badge
Mission Control — unified monitoring pipelineHealth is signalled by color + icon + label together — never color alone (accessibility).

What it does

Mission Control collapses three monitoring consoles into a single pane of glass: know within ~2 seconds if anything is wrong, and reach the failing logs in one click. Every app and job shows a clear health state — Healthy, Warning, Failed or Idle — communicated by color and icon and label, grouped into business-area sections with a fleet-health overview and filters.

One model, many sources

Posit Connect, shinyapps.io and Vercel are normalized into one shared model, classified into a single set of health states, and rendered identically — so the experience is consistent no matter where an app lives. Sensible fallbacks keep it useful at all times: labelled demo data before credentials are added, and a 'showing cached data' notice if a source is briefly unreachable, rather than going blank.

3D map & real-time alerts

  • Interactive orbital constellation of every asset, colored by health, with a glow on what's failing — click a node to jump to its logs
  • Opt-in desktop notification, sound, and a tab/favicon badge the moment something newly fails, even with the tab backgrounded
  • Acknowledge & mute an alert for an hour while investigating, without losing visibility; admins can trigger a job on demand
  • Auto-refresh (30s / 1m / 5m / off), search, and status filters keep the view live with zero manual reloads

Secure by default

  • Credentialed access — nothing visible without signing in; RBAC for admin (full + admin console) and viewer (read-only)
  • Server-side sessions with instant revocation (force-logout, deactivate, role change take effect immediately)
  • Account lockout after repeated failed logins, plus request rate limiting
  • Full audit log of every sign-in and admin action; hardened headers (HSTS, X-Frame-Options, nosniff) and noindex

Stack

Next.js 15React 19TypeScriptReact Three FiberTanStack QueryAuth.js v5PrismaPostgreSQL (Neon)