MIT License TypeScript 5.6 React 19 160 Tests

Self-hosted infrastructure management for Proxmox homelabs.
Deploy, monitor, and secure Docker services from a single control plane.

🚀

Deploy

Git push to Gitea triggers SSH-based Docker builds on remote hosts. Auto-detects Node.js, Python, Go, and static sites.

📊

Monitoring

System metrics via Proxmox API + Docker container stats via SSH. CPU, RAM, disk, and network at a glance.

📜

Centralized Logs

Container, journald, and HTTP logs collected via SSH. Live tailing with WebSocket streaming.

🛡

Security

CrowdSec integration with alerts, active bans, and manual IP block/unblock. All from the dashboard.

🔔

Alerting

Rule-based notifications via Telegram and Discord. Metric thresholds, service down, security events.

🔄

Zero Agents

No extra processes on your hosts. Everything works over SSH and the Proxmox API. Just add your keys.

Screenshots

Dashboard
Dashboard
Hosts
Hosts
Security
Security
Logs
Logs

Architecture

ShipIt runs on a lightweight Proxmox CT. No Docker on the management server itself.

Browser ───> ShipIt (CT 200) ───> Docker Host (VM 101) React SPA Express + SQLite Docker containers bare metal via SSH Gitea (CT 201) │ webhook push ▼ ShipIt API ───> SSH deploy

Tech Stack

FrontendReact 19 + Vite 6
BackendExpress + TypeScript
DatabaseSQLite
AuthJWT
ValidationZod
Loggingpino
TestingVitest + Playwright
Securityhelmet + CrowdSec