Side by side
| Property | Calendula | Etar | Fossify Calendar |
|---|---|---|---|
| Licence | MIT | GPLv3 | GPLv3 |
| Minimum Android | 10 | 6.0 | 8.0 |
| Where your events live | System calendar only | System calendar only | Own database, CalDAV mirrored into it |
| Interface built with | Jetpack Compose, Material 3 Expressive | Android Views, AOSP-derived | Android Views |
| INTERNET permission | None | None | None |
| Started life as | Written from scratch | A fork of AOSP Calendar | A fork of Simple Calendar |
| Version checked | 2.20.3 | 1.0.57 | 1.10.3 |
The one difference that changes anything
Strip away the styling and there is a single architectural split, and it is not the one the app listings would suggest.
Calendula and Etar are pure front-ends. Neither has a database. They read and write Android's CalendarContract directly, and that is the whole storage story — Etar's source tree has no database layer in 2,211 files, and neither does mine. Whatever sync adapter put a calendar on your device owns the data; we just draw it.
Fossify Calendar keeps its own store. It has a Room database, and for CalDAV calendars you switch on in its settings it mirrors the system provider's events into that database, matched by import ID. Your events then exist in two places, and the copy has to be reconciled. Worth stating because fossify.org describes the app as using the system calendar "rather than maintaining a separate database"; the source says otherwise, and the source is what I went by.
Neither model is the correct one. What each one buys:
- The mirror lets Fossify hold purely local events with nothing synced anywhere, and offer features the provider's schema has no column for.
- The pure front-end leaves nothing to reconcile and nothing of yours inside the app, at the cost of inheriting whatever the provider supports. Both can create a device-only calendar themselves, so neither needs an account before it is useful.
The detail behind each verdict
Etar
It is mostly Java and built on Views rather than Compose, which is exactly why it is stable: that code has been fixed for a long time, on more real devices than anything I will write this decade. If you want a calendar you never have to think about, Etar is the honest recommendation.
Fossify Calendar
The feature surface is what a decade of accumulated Simple Calendar history buys you, and the separate store is what lets it offer things the provider's schema has no column for.
Corrected 20 September 2026. This paragraph used to say the separate store made Fossify the only one of the three usable on a phone with no calendar account at all. That was wrong when I wrote it, and not in one way but two. Calendula has created device-only local calendars since 2.2.0 in June 2026 — Settings → Calendars → Add calendar — three months before I published the claim. And Etar offers an offline calendar of its own, which I never checked. The superlative was the error: I had a reason to believe it of Fossify and no evidence at all about the other two.
Calendula
The design is the reason: Compose on Material 3 Expressive throughout — the shapes, the spring-based motion between views, the type scale, dynamic colour from your wallpaper. Etar and Fossify are Views-based apps with Material touches. That is the only difference I would argue hard for. Secondary, and genuinely secondary: it is MIT rather than GPL.
The counterweight: version 0.1.0 shipped in June 2026, three months before this page, while Etar has been in production for years. If "battle-tested" is what you are shopping for, I am not it yet, and you should take that seriously rather than take my word that it is fine.
A note on Simple Calendar
You will still find Simple Calendar recommended in older threads. Simple Mobile Tools, the suite it belonged to, was sold to the app publisher ZipoApps in December 2023, and the published builds afterwards carried advertising. Fossify is the community fork, started by a contributor to the original project, and it is where that lineage is now maintained. If a list from 2022 sent you to Simple Calendar, Fossify Calendar is what it meant.
How this was checked
Verified on , against the versions in the table:
- Permissions — each project's
AndroidManifest.xmlon its default branch, grepped for anINTERNETentry. Three manifests, zero hits. - Storage model — file listings of each repository, plus Fossify's
CalDAVHelper.ktand itsEventsDatabaseschemas. - Minimum Android versions — F-Droid's listings for Etar and Fossify Calendar;
minSdk 29from Calendula's own Gradle config.
If something here is wrong or has gone stale, email me at support@jeanlucmakiola.de and I will fix it. Getting a competitor's facts wrong is worse for me than losing the comparison.
Back to Calendula — or the F-Droid listing if you have decided.