This is an old revision of the document!
Table of Contents
Start
VPS Codebase Overview
This is the main entry point for the BinaryLane / Mammoth VPS codebase wiki.
What is this application?
The VPS platform is a large .NET monorepo with supporting services across multiple languages. It manages the full lifecycle of Virtual Private Server (VPS) instances — from provisioning to live management to billing.
Codebase Composition
vps/vps (main repo) — 10,000 entries across 1,926 directories and 8,074 files:
- C# (.cs): 2,605 files — Core application logic, web API, services, controllers
- Python (.py): 382 files — Tooling, scripts, ops automation
- TypeScript/TSX (.ts/.tsx): 640 files — Frontend SPA code
- Velocity templates (.vm): 429 files — Email/SMS templates
- YAML (.yml): 564 files — CI/CD, infrastructure configs
- Shell (.sh): 117 files — Deployment and admin scripts
- JSON (.json): 115 files — Config and data files
- Other: 2,322 files — Images, CSS, SCSS, SVG, XML configs, etc.
vps/compute (project 22) — Programs on compute hosts: HostDaemon, qemu-network, routed, smtbalance, xm/xm-for-kvm (Xen/KVM), ovmf (UEFI firmware), power-limiter, services
Monorepo Structure
<code> vps/vps/ ├── product/ — Customer-facing software (main code) │ ├── website/ — .NET web panel (ASP.NET Core + MonoRail) │ ├── forks/ — Third-party code (PayPal, Rhino.Mocks) │ ├── vmbuilder/ — VM image builder │ ├── guest-agent/ — Guest OS agent │ ├── e2e-tests/ — End-to-end tests │ └── mentos/ — Experimental features ├── facility/ — Per-datacentre satellite services │ ├── backupproxy — Backup download proxy (.NET) │ ├── looking-glass — Network diagnostic tool (PHP) │ └── rescueproxy — VNC rescue access (.NET) ├── infrastructure/ — Physical device software │ ├── compute/ — HostDaemon, qemu-network, routing │ ├── qemu/ — QEMU/KVM infrastructure │ ├── backup/ — Backup host programs │ ├── isobuilder/ — ISO/image building │ └── dynamic-routing/ — BIRD routing (Rust) ├── ops/ — Internal ops tooling │ ├── ansible/ — Infrastructure automation │ ├── butler/ — Internal bot │ ├── cicd/ — CI/CD configuration │ ├── icinga/ — Monitoring │ ├── morbo/ — Service health checks (.NET) │ └── tron/ — Job scheduler ├── scripts/ — Shared scripts └── team/ — Team-specific tooling
vps/compute (project 22) — Compute host programs:
hostdaemon, qemu-network, routed, smtbalance, xm/, xm-for-kvm/ (Xen), ovmf/ (UEFI/KVM), power-limiter
