Calendar calendar
foundational
Your own, one you share, or everybody's.
-
Name
nametext, one linerequired Encrypted -
Colour
colourtext, one line Encrypted
$ cm quill add calendar
Or, as an administrator, open Administration → Quills in the app and choose Calendar. Either way your cloud shows you everything below and waits for your yes.
The kinds of data it works with. Records belong to the people who write them, not to the quill: removing it leaves every one where it is.
calendarYour own, one you share, or everybody's.
name
text, one linerequired
Encrypted
colour
text, one line
Encrypted
eventA title and two moments, on a calendar. Times are wall-clock times.
calendar
link to Calendarrequired · deleted with its calendar
Indexed
title
text, one linerequired
Encrypted
starts_at
date and timerequired
Indexed
ends_at
date and time
Indexed
all_day
yes or no
Indexed
location
text, one line
Encrypted
notes
Markdown
Encrypted
Indexed fields are kept plain, so your cloud can sort and filter by them. Encrypted fields are encrypted before they reach the disk.
Each is a tab, drawn by your cloud itself on every surface:
cm calendaryours · “your name”everybody · “Everybody”None. Everything it does is declared in quill.toml and run by your cloud itself.
A Quill for Cloudmorrow: your own calendar, the ones you share with the people you live or work with, and one the whole server shares.
Every calendar you can see is drawn at once, each event in the colour of the calendar it is on — a calendar you have to switch between is one that lets you double-book yourself.
Times are the times on the wall. "The dentist at ten" is stored as
2026-10-01T10:00, with no zone, and is at ten on every screen in October
and in June alike. An all-day event is a bare date, and its end is the last
day it is on.
| Datamodels | uses the foundational calendar (a space: personal, shared or public) and event (in a calendar), domain Calendars |
| Screens | one calendar: a month and the day's list on the phone, a week and a month on the web app, a month and the day in the terminal, cm calendar list --from --to and add, and to your assistant |
| Jobs | none |
| Datasets | yours: a personal calendar for each person, named after them; everybody: one public calendar for the server |
| Services, webhooks, APIs | none |
It contains no code: everything above is declared in quill.toml.
See CLAUDE.md. In short: cm quill check, then cm quill dev.
AGPL-3.0-or-later.