Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Getting Started

Installation

See Deployment for Docker, systemd, and binary install options.

For development:

cargo build --release

First-time setup

  1. Start the server:
    calrs serve --port 3000
    
  2. Open http://localhost:3000 in your browser
  3. Register an account — the first user automatically becomes admin
  4. From the dashboard, add a CalDAV source and create your first event type

Option 2: CLI

# Create an admin user
calrs user create --email alice@example.com --name "Alice" --admin

# Connect your CalDAV calendar
calrs source add --url https://nextcloud.example.com/remote.php/dav \
                 --username alice --name "My Calendar"

# Pull events
calrs sync

# Create a bookable meeting type
calrs event-type create --title "30min intro call" --slug intro --duration 30

# Check available slots
calrs event-type slots intro

# Start the web server
calrs serve --port 3000

Environment variables

VariableDescriptionDefault
CALRS_DATA_DIRDirectory for the SQLite databasePlatform-specific (XDG)
CALRS_BASE_URLPublic URL (needed for OIDC callbacks and email action links)http://localhost:3000

Data directory

calrs stores everything in a single SQLite database (calrs.db) inside the data directory. By default this follows XDG conventions:

  • Linux: ~/.local/share/calrs/
  • macOS: ~/Library/Application Support/calrs/

Override with CALRS_DATA_DIR or --data-dir.

Quick test

After setup, your booking page is available at:

  • /u/yourname — your profile listing all event types
  • /u/yourname/intro — the slot picker for the “intro” event type