tenement

Crates.iotenement
lib.rstenement
version0.1.4
created_at2025-12-06 19:47:47.4061+00
updated_at2025-12-06 20:34:23.71561+00
descriptionHyperlightweight process hypervisor for single-server deployments
homepagehttps://tenement.dev
repositoryhttps://github.com/russellromney/tenement
max_upload_size
id1970649
size44,664
russell romney (russellromney)

documentation

README

tenement

Hyperlightweight process hypervisor for single-server deployments.

tenement spawns and supervises processes with Unix socket communication, health checks, and automatic restarts. No Docker, no Kubernetes, no complexity—just fast, simple process management.

Installation

curl -LsSf https://tenement.dev/install.sh | sh

Or with pip/uv:

pip install tenement
# or
uv tool install tenement

Or with Cargo:

cargo install tenement

Quick Start

1. Create a config file

# tenement.toml
[process.api]
command = "./my-api"
socket = "/tmp/api-{id}.sock"
health = "/health"

[process.api.env]
DATABASE_PATH = "{data_dir}/{id}/app.db"

2. Spawn an instance

$ tenement spawn api --id user123
Spawned api:user123
Socket: /tmp/api-user123.sock

3. Manage instances

$ tenement ps
INSTANCE             SOCKET                         UPTIME     HEALTH
api:user123          /tmp/api-user123.sock          2m         healthy

$ tenement stop api:user123
Stopped api:user123

Why tenement?

Alternative Problem
Docker Heavy, slow cold starts, network overhead
systemd No on-demand spawn, no routing
K8s/Nomad Overkill for single server
Bash scripts No health checks, no supervision

tenement gives you:

  • Sub-second cold starts - Rust binaries + Unix sockets = instant
  • On-demand spawn - Processes start when first requested
  • Auto-restart - Health checks with automatic recovery
  • Zero overhead - Direct Unix socket IPC, no network layer
  • Simple config - One TOML file defines everything

Documentation

Full documentation at tenement.dev

License

Apache 2.0 - Use it however you want.

Commit count: 0

cargo fmt