self-hosted · one container · your data

Your day,
quietly organized.

Cal is a calendar, tasks, notes, links, files, boards, time tracking and mail — in one calm place that runs on your own hardware.

# runs in one container, embedded Postgres included
docker run -d --name cal -p 8080:8080 -v cal-data:/data ghcr.io/dvorinka/cal
Cal — month view
month view · dark theme
Everything in one place

One app instead of six subscriptions.

Every module can be toggled per workspace — keep it minimal or turn it into a full workbench.

calendar

Month, week, day

Drag-and-drop, recurrence with exceptions, external iCal feeds, holidays, and a per-user default view.

tasks

Natural quick-add

Type “dentist fri 5pm #health” — Cal parses the date, time and tags. Saved filters and dependencies included.

notes

Notes & wikilinks

Markdown notes that pin context to a day, link to each other, and live on the calendar too.

boards

Kanban boards

Columns, drag & drop, tracked-minutes chips, and public share links with view or edit tiers.

time

Time tracking

One running timer, manual entries, billable rates, tags, and CSV/JSON export — solidtime-style.

mail

Mail built in

IMAP read/flags/delete and SMTP send with attachments — works with Gmail, Fastmail, or your own Dovecot.

links & files

Links, files, feeds

Link unfurling with thumbnails, file uploads with share links, and RSS/YouTube channel feeds.

everywhere

Web, desktop, Android

PWA in any browser, a Wails desktop app for Linux/Windows/macOS, and an Android app with a home-screen agenda widget.

interop

Open by design

ICS export, CalDAV/CardDAV, webhooks, an MCP endpoint for AI tools, and a JSON export of everything.

Install

Running in under a minute.

Pick whichever fits — the container is the simplest path.

Docker

All-in-one image: UI + API + embedded Postgres. Data persists in the volume.

docker run -d --name cal -p 8080:8080 -v cal-data:/data ghcr.io/dvorinka/cal

Docker Compose

Pulls the published image by default; --build builds from source.

git clone https://github.com/Dvorinka/cal && cd cal && docker compose up -d

Desktop

Linux, Windows and macOS builds with embedded Postgres — double-click and go.

github.com/Dvorinka/cal/releases

Android

APK on the releases page. Point it at your server, get a home-screen agenda widget.

cal-android.apk
Private by default

Your data never leaves your machine.

Cal embeds Postgres inside the same process — no cloud account, no analytics, no third-party calls. Everything lives in one volume you control, back up, or carry away.

  • Embedded Postgres — zero external services required
  • One /data volume — trivial to back up or move
  • No telemetry — nothing phones home
  • Full export — JSON dump of entries + settings anytime
  • MIT licensed — read it, fork it, keep it
Cal — week view
week view · dark theme