Install

Install on bare metal

Run Cuitty as a single Bun binary on a Linux VM, with systemd-managed services for production durability.

Install on bare metal

Cuitty ships a single Bun-bundled binary suitable for running directly on a Linux VM without containers. This is the lowest-overhead deployment option.

Prerequisites

Download

curl -fsSL https://releases.cuitty.com/portal/latest/portal-linux-x86_64 \
  -o /usr/local/bin/cuitty-portal
chmod +x /usr/local/bin/cuitty-portal

Configure

Create /etc/cuitty/portal.env:

DATABASE_URL=postgres://cuitty@localhost/cuitty
SPICEDB_URL=localhost:50051
SPICEDB_TOKEN=...
BETTER_AUTH_SECRET=...
PORT=7700
DATA_DIR=/var/lib/cuitty

systemd unit

/etc/systemd/system/cuitty-portal.service:

[Unit]
Description=Cuitty Portal
After=network.target postgresql.service

[Service]
Type=simple
EnvironmentFile=/etc/cuitty/portal.env
ExecStart=/usr/local/bin/cuitty-portal
Restart=on-failure
User=cuitty
Group=cuitty
WorkingDirectory=/var/lib/cuitty

[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now cuitty-portal

Reverse proxy

Run Caddy or nginx in front of the portal for TLS termination. The portal expects to be reached over HTTPS in production for cookie-based auth to work correctly.