alpha

Shackleton — Automatic Network Discovery & Visualization

Automatic network discovery & visualization

Python FastAPI Django PostgreSQL Redis HashiCorp Vault Docker

About

Shackleton maps your infrastructure the way it actually exists — not the way the diagram in Confluence claims it does. It queries switches via SNMP (Juniper and generic), probes Linux hosts via SSH, and scans Docker to build a queryable topology graph, with Kubernetes scanning planned for Phase 2. An async FastAPI backend orchestrates scans via Celery, while credentials for every device stay in HashiCorp Vault — fetched on-demand with short-lived leases, never stored in code, environment variables, or the application database.

A Django-based setup wizard walks you through configuration and bootstraps the guided onboarding flow; the full operator dashboard is still ahead on the roadmap, alongside role-based access control and a plugin system for scanners. Infrastructure sidecars (Postgres, Redis, Vault) run as Docker Compose profiles, so teams with existing infra can point Shackleton at what they already run instead of the bundled stack.

Features

  • SNMP (Juniper + generic) and SSH discovery scanners, with Kubernetes scanning planned for Phase 2
  • Docker scanner with Celery-orchestrated relationship mapping into a topology graph
  • Async FastAPI backend with JWT auth (15-minute access tokens) and interactive Swagger docs
  • HashiCorp Vault-backed credentials with short-lived leases — no secrets in code, env, or database
  • Django setup wizard for guided onboarding; full dashboard UI targeted for Phase 2

Notes

Phase 1 of a three-phase roadmap (Q2 2026) — core discovery, REST API, and the web setup wizard are the current focus; RBAC, a Kubernetes scanner, and the full dashboard UI are targeted for Phase 2 (Q3 2026). Default dev credentials (Vault root token, changeme passwords) must be changed before any network-accessible deployment. License terms are under review — a tiered free/commercial model is being considered; Apache 2.0 applies until then.

Interested in Shackleton? Get in touch →