Radicale
Radicale is the calendar backend in My Own Suite. It is focused, lightweight, and easy to keep private while still syncing across devices through standard CalDAV clients.
Managing your calendar
Homepage shows your events, but it does not create or edit them. Radicale is a CalDAV server, so event management happens in a calendar client.
Connect your phone
- iPhone (native Calendar app):
- Go to
Settings -> Apps -> Calendar -> Calendar Accounts -> Add Account -> Add Other Account -> Add CalDAV Account. - Server:
https://radicale.<your-domain> - Username/password: your Radicale credentials.
- Go to
- Android:
- Install
DAVx5for CalDAV sync. - Add your Radicale account in DAVx5 using your server URL and credentials.
- Open your preferred calendar app to create and edit events.
- Install
Connect desktop clients
- Most CalDAV clients work, including Thunderbird and Apple Calendar.
- Use server URL
https://radicale.<your-domain>with your Radicale credentials.
If auto-discovery fails
Use the direct calendar collection URL:
https://radicale.<your-domain>/<username>/default-calendar/
Why Radicale was chosen
A calendar holds some of the most personal details of your life, from doctor appointments and family activities to work meetings and travel plans. With Radicale, this sensitive information stays entirely under your control, instead of being stored on servers owned by Google, Apple, or Microsoft.
Radicale was chosen because it replaces only the cloud storage and sync layer, not your calendar app. That means you can keep using the same familiar calendar on your phone or computer, but your data is stored safely on your own server. You get the same user experience, without giving your private schedule to big tech companies.
Built on open CalDAV standards, Radicale works with most calendar clients and operating systems. It focuses on doing one thing well: providing a secure, lightweight synchronization server that respects your privacy and keeps your digital independence intact.
For users migrating away from large cloud providers, Radicale makes the transition seamless: your calendar stays where it belongs, in your hands.
Technical reference
Environment variables
RADICALE_ADMIN_USERNAME: Required bootstrap admin username.RADICALE_ADMIN_PASSWORD: Required bootstrap admin password.RADICALE_BASIC_AUTH_B64: Base64 value ofusername:passwordused by Caddy internal iCal bridge.RADICALE_ICAL_TOKEN: Shared token used in internal iCal bridge URL path.
Volumes and persistence
- Required volume mount:
/data - This stores users, collections, and calendars.
Dependencies and integrations
- Homepage calendar widget integration uses an internal Caddy bridge endpoint.
- Caddy injects Radicale Basic Auth header server-to-server.
- Homepage fetches iCal through
RADICALE_ICAL_URL(backend only).
Security model
- Public endpoint (
radicale.${DOMAIN}) remains authenticated. - Homepage must use internal URL:
http://caddy/internal/radicale-ical/<RADICALE_ICAL_TOKEN>
- Do not expose
/internal/radicale-ical/*on public domains. - Do not disable Radicale authentication for convenience.
- Rotate
RADICALE_ICAL_TOKENandRADICALE_BASIC_AUTH_B64if leaked.
Customizations in this project
- Custom entrypoint enforces htpasswd auth and auto-creates admin user.
- Entry-point auto-creates default calendar:
/<RADICALE_ADMIN_USERNAME>/default-calendar/
- Entry-point seeds one launch-day event for first-run widget validation.