### Local, Google, Microsoft, CalDAV, and iCloud calendars in one standalone app
Built with [Quickshell](https://quickshell.org/) and [Go](https://go.dev/)
[](https://github.com/AvengeMedia/dankcalendar/stargazers)
[](https://github.com/AvengeMedia/dankcalendar/blob/master/LICENSE)
[](https://aur.archlinux.org/packages/dankcalendar-bin)
[![AUR version (git)]()](https://aur.archlinux.org/packages/dankcalendar-git)
[](https://discord.gg/ppWTpKmPgT)
[](https://ko-fi.com/danklinux)
DankCalendar is a standalone calendar app that brings your Local, [Google](https://calendar.google.com/), [Microsoft](https://outlook.com/), [CalDAV](https://en.wikipedia.org/wiki/CalDAV), and [iCloud](https://www.icloud.com/calendar/) calendars together in one place. It runs as a lightweight daemon with a tray icon, keeps your accounts in sync, and reminds you about events — all with the look and feel of [DankMaterialShell](https://github.com/AvengeMedia/DankMaterialShell).
## Repository Structure
This is a monorepo containing both the calendar interface and the core backend services:
```
dankcalendar/
├── quickshell/ # QML-based calendar interface
│ ├── Modules/ # UI components (calendar views, sidebar, tray)
│ ├── Modals/ # Settings, account, event, and search dialogs
│ ├── Services/ # IPC bridge and shell-side state
│ ├── Widgets/ # Reusable Dank UI controls
│ ├── Common/ # Shared resources, themes, and i18n
│ └── translations/ # POEditor-managed string catalogs
├── core/ # Go backend, daemon, and CLI
│ ├── cmd/dcal/ # dcal CLI and daemon entrypoint
│ ├── internal/ # Providers, sync engine, reminders, IPC, OAuth
│ ├── api/ # HUMA + chi HTTP API
│ ├── ent/ # Ent ORM schema and generated code
│ └── repo/ # Repository-pattern data access
├── assets/ # Icons, desktop entry, systemd unit
└── Makefile # Build, install, and dev targets
```
## See it in Action