Quick start
This page walks you through the shortest path to a running calit instance.
Prerequisites
Section titled “Prerequisites”- Docker and Docker Compose installed on the host.
- A public HTTPS URL pointing to the host (required for production use, e.g.
https://book.example.com). For a local trial,http://localhost:8080works. - An SMTP server for sending booking confirmation and reminder emails.
1. Get the files
Section titled “1. Get the files”Clone the repository, or copy docker-compose.yml and .env.example from it to an empty directory:
git clone https://github.com/asm0dey/calit.gitcd calit2. Create your .env
Section titled “2. Create your .env”cp .env.example .envOpen .env and set at minimum:
| Variable | Description |
|---|---|
DB_PASSWORD | Password for the Postgres database. |
APP_BASE_URL | Public origin of the app, e.g. https://book.example.com. |
SESSION_ENCRYPTION_KEY | At least 16 characters. Generate with openssl rand -hex 32. |
TOKEN_ENCRYPTION_KEY | Exactly 64 hex characters. Generate with openssl rand -hex 32. |
MAIL_HOST | SMTP hostname. |
MAIL_PORT | SMTP port (commonly 587 or 465). |
MAIL_USERNAME | SMTP username. |
MAIL_PASSWORD | SMTP password. |
MAIL_FROM | From address for outgoing mail. |
MAIL_START_TLS | STARTTLS mode: REQUIRED, OPTIONAL, or DISABLED. Use REQUIRED with port 587. |
MAIL_TLS | true to use implicit TLS (port 465); false otherwise. |
3. Start
Section titled “3. Start”docker compose up --build -dThis builds the image and starts two containers: app (Quarkus on port 8080) and db (Postgres).
4. Create the first admin user
Section titled “4. Create the first admin user”Open APP_BASE_URL in your browser. Because the database is empty, the app redirects automatically to /setup. Fill in the form to create your first admin account. There is no default password.
5. Done
Section titled “5. Done”You are now logged in as the admin. From the management UI at /me you can:
- Create meeting types with custom slugs, durations, and booking controls.
- Configure your availability and calendar integrations.
- Invite additional users (if you enable sign-ups).
Next steps
Section titled “Next steps”- Configuration reference — all environment variables explained.
- Reverse proxy setup — put Nginx or Caddy in front of calit.
- First-run walkthrough — a guided tour of the initial setup wizard.