CTRoadmap is a local-first infrastructure atlas for documenting nodes, services, storage, scripts, configs, URLs, checks, and operational relationships.
CTRoadmap is a GUI-first editor backed by data/atlas.json. It does not execute commands, SSH, Docker calls, or live checks.
The recommended beta release path is the published Docker image:
ghcr.io/noobcity99/ctroadmap:beta
Beta users do not need to clone this repository or install Python, Node, or npm.
Requirements:
- Linux server
- Docker
- Docker Compose v2
- curl
- Port 8088 reachable if accessing CTRoadmap from another machine
Option A, safer:
curl -fsSL https://raw.githubusercontent.com/NoobCity99/CTRoadmap/main/CTR_install.sh -o CTR_install.sh
chmod +x CTR_install.sh
./CTR_install.shOption B, one-liner:
curl -fsSL https://raw.githubusercontent.com/NoobCity99/CTRoadmap/main/CTR_install.sh | bashCustom install directory:
CTR_INSTALL_DIR=/opt/ctroadmap-beta ./CTR_install.shManagement commands:
cd ~/ctroadmap-beta
docker compose logs -f
docker compose down
docker compose up -d
docker compose pull && docker compose up -dManual beta update:
cd ~/ctroadmap-beta && docker compose pull && docker compose up -dUninstall:
curl -fsSL https://raw.githubusercontent.com/NoobCity99/CTRoadmap/main/CTR_uninstall.sh -o CTR_uninstall.sh
chmod +x CTR_uninstall.sh
./CTR_uninstall.shPersistent data lives in:
~/ctroadmap-beta/data
~/ctroadmap-beta/exports
docker compose up -dOpen:
http://localhost:8088
Stop:
docker compose downLogs:
docker compose logs -fBackup data:
cp data/atlas.json data/atlas.backup.jsonUpdate Advisory is informational only. CTRoadmap does not auto-update, run Docker commands, mount the Docker socket, or execute system-management actions.
- Create, edit, delete, drag, search, and filter typed tiles.
- Create subtiles from the inspector; this creates a
containsrelationship. - Draw typed relationships between tiles in the canvas.
- Edit relationship type, label, notes, endpoints, and directionality.
- Duplicate tiles from the inspector or with
Ctrl/Cmd+D. - Add ordered flow steps to
flowtiles from the inspector. - PLANNING MODE: Plan nodes & connections before going live, visual distinction while planning.
- Document non-executing checks with command and expected-result fields.
- Save and reload the canonical atlas at
data/atlas.json. - Create, edit, delete, and switch saved views.
- Switch between
canvas_topologyandlayered_hierarchytemplates per view. - Import a saved
atlas.jsonafter backend validation. - Download the current atlas JSON from the browser.
- Export Markdown, YAML, and Mermaid files to
exports/. - Download generated export files from the toolbar.
- LOCK canvas to prevent accidental changes while navigating.
- See warnings for broken links and missing required tile data.
- See warnings for incomplete flows/checks.
- Load optional CTDC sample data from the toolbar.
Flow steps and check tiles are documentation only. CTRoadmap does not run check commands.
Ctrl/Cmd+S Save
Ctrl/Cmd+D Duplicate selected tile
Delete/Backspace Delete selected tile or relationship
/ Focus search
Escape Clear selection
![]() |
![]() |
![]() |
![]() |
GET /api/health
GET /api/app/version
GET /api/app/update
PUT /api/app/update/settings
GET /api/atlas
PUT /api/atlas
POST /api/export/markdown
POST /api/export/yaml
POST /api/export/mermaid
GET /api/export/markdown/download
GET /api/export/yaml/download
GET /api/export/mermaid/download
Planning decisions, questions and answers, bugs, and fixes are tracked in PROJECT_LOG.md.
CTRoadmap is licensed under the Apache License 2.0. See LICENSE.




