selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

calrs logo

Self-host calrs

v1.21.0

Fast self-hosted scheduling platform in Rust

ReleaseOpen SourceAGPL-3.0
Updated10 hours ago
LanguageRust
Setup difficultyModerate
MobileResponsive
ThemeDark mode
Stars
331
Port
3000 (HTTP web server)
Requires
CalDAV server
Docker
ghcr.io/olivierlambert/calrs
Install with Docker
calrs dashboard overviewDashboard with stats and quick actionsBookings list with human-friendly datesTime slot picker with timezone supportEvent types managementBooking form for guestsCalendar sources managementAdd CalDAV calendar source with provider presetsTeams overviewTeam settings with members and groups

What is calrs?

calrs is a self-hosted scheduling platform built in Rust as a single binary with no external runtime dependencies. It connects to CalDAV servers (Nextcloud, Fastmail, BlueMind, iCloud, Zimbra, SOGo, Radicale) for free/busy sync and write-back of confirmed bookings, and also supports Google Calendar via OAuth2 and Microsoft Exchange via EWS. Users define event types with duration, buffers, minimum notice, and availability schedules; guests book through a public slot picker with timezone auto-detection. Features include team scheduling (round-robin or collective), three visibility levels (public, internal, private), dynamic group links, rescheduling without cancellation, booking limits, date overrides, availability troubleshooting, dark/light themes with 7 built-in presets, multi-language UI (9 languages), email notifications with .ics invites, SMS via Twilio/GatewayAPI/seven.io, Jitsi video rooms or custom webhook providers, optional self-hosted CAPTCHA (Cap), OIDC/SSO (Keycloak, Authentik), Argon2 password hashing, AES-256-GCM credential encryption, and a full CLI for headless operation. It listens on port 3000 by default, uses SQLite (WAL mode) for storage, and is deployed via Docker, Docker Compose, systemd, or bare binary. Licensed AGPL-3.0.

Should you self-host calrs?

calrs scores 53/100 on selfhost.directory (how scoring works) and ranks #9 of 30 in Calendar & Contacts. It has 331 GitHub stars.

It shipped 10 stable releases in the past year. The latest, v1.21.0, came out on 25 October 2026.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is AGPL-3.0-licensed and written mostly in Rust.

Its closest alternative on selfhost.directory is Cal.dyi (81/100, 49 458 stars). It scores higher overall, so compare the two before you pick. See calrs vs Cal.dyi side by side.

Features

  • Availability engine
  • CalDAV Sync
  • CalDAV write-back
  • Dynamic group links
  • Email notifications with .ics
  • Event types
  • Multi-language UI
  • OIDC/SSO
  • Rescheduling
  • SMS Notifications
  • Team scheduling
  • Three-level visibility
  • Timezone Support
  • Video meeting links

calrs README

How to install calrs

Install calrs with Docker

Docker Engine
Environment variables
CALRS_BASE_URL (required), CALRS_SECRET_KEY (optional), RUST_LOG (optional)

docker run -d --name calrs -p 3000:3000 -v calrs-data:/var/lib/calrs -e CALRS_BASE_URL=https://cal.example.com ghcr.io/olivierlambert/calrs:latest

Pre-built multi-arch images (amd64 + arm64) from GitHub Container Registry

How to configure calrs

  • CALRS_BASE_URLPublic base URL for the instance (required for OIDC redirects and email links)

    Public base URL for the instance (required for OIDC redirects and email links)

    values: Any valid HTTPS URL

  • CALRS_SECRET_KEYauto-generatedSecret key for AES-256-GCM encryption of CalDAV and SMTP credentials at rest

    Secret key for AES-256-GCM encryption of CalDAV and SMTP credentials at rest

    values: Any 32-byte base64-encoded string

  • RUST_LOGcalrs=info,tower_http=infoStructured logging level for tracing and tower-http

    Structured logging level for tracing and tower-http

    values: Standard tracing filter syntax (e.g., calrs=debug,tower_http=debug)

calrs releases & version history

More in Scheduling & Booking

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…