Skip to main content

ign8saas

Ignite a multi-tenant SaaS control plane on Hetzner Cloud. One VPS runs Caddy (TLS termination + wildcard certs via Cloudflare DNS-01), Vaultwarden (Bitwarden-compatible password vault) and wg-portal (WireGuard admin UI) — reachable at three subdomains of your parent zone.

Quickstart

cp .env.example .env    # fill in Hetzner + Cloudflare credentials
ign8saas up             # provision server + DNS + docker stack

What gets provisioned

For IGN8_DOMAIN=traeck.it you get:

Subdomain Purpose
saas.traeck.it landing page ("SaaS control plane — coming soon")
*.vaultwarden.traeck.it Vaultwarden (vanity slug redirect on subdomain)
*.vpn.traeck.it wg-portal (WireGuard admin UI)

Underneath, on a single Hetzner cax11 VPS in fsn1:

  • Docker + Compose plugin (installed via get.docker.com)
  • caddy (ghcr.io/caddybuilds/caddy-cloudflare:latest) — ports 80/443, wildcard certs via DNS-01
  • vaultwarden (vaultwarden/server:latest) — signups disabled, invitations enabled
  • wg-portal (ghcr.io/h44z/wg-portal:latest) — port 51820/udp exposed for WireGuard
  • Hetzner firewall: 22 / 80 / 443 / 51820-udp only

State

Local state lives under .ign8saas/ (gitignored):

  • .ign8saas/keys/ign8saas — SSH private key for server access
  • .ign8saas/state.json — Hetzner IDs, IPv4
  • .ign8saas/vaultwarden-init.json — Vaultwarden admin token + wg-portal admin creds (chmod 600, keep safe)

Status

This scaffold delivers the shared infra only. Per-customer onboarding (add-customer, del-customer) is stubbed — see CLAUDE.md for the design notes and the roadmap.

See CLAUDE.md for architecture details.

Metadata

Release files for ign8saas 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ign8saas 0.1.4
File Size Uploaded
ign8saas-0.1.4.tar.gz 13.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ign8saas 0.1.4
File Interpreter ABI Platform
ign8saas-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 29.6 kB

Release files / ign8saas-0.1.4.tar.gz

Download URL ign8saas-0.1.4.tar.gz
Size 13.4 kB
Tags Source
SHA-256 checksum
How to use checksums
33975a3492c71b79800c164b6d79a792e72ad614decd6306a91d03f7f07fc656
BLAKE2b-256 checksum
How to use checksums
937cec1fc00b64ca17f8cdc6570d544424c4db4883cae14d3890a8c977453ee3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / ign8saas-0.1.4-py3-none-any.whl

Download URL ign8saas-0.1.4-py3-none-any.whl
Size 16.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8d8886107019b3d4f9972af9c427458bcd219ec5e6c015b0875ce9b94edb1c13
BLAKE2b-256 checksum
How to use checksums
d0d52a71c290d62b482eab2252ad10ab2179be8ed9ccff72c8fc0bfe7014d56c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page