package icon

Calendula

A modern Material 3 Expressive calendar for Android.
New in version 2.21.0
New
• Setup now makes sure you have a calendar to write to — create one, add an account, or switch a hidden one back on.

Changed
• The month grid gives its days more room: smaller week numbers, a measured gutter, tighter chips.
• A month day shows as many events as it has height for, instead of a flat three.
• Split view no longer pads a short month out to six rows.

Fixed
• Short events show their title in week and day view.
• Untitled events and unnamed calendars read in your language.
Calendula is a modern, open-source calendar app for Android. It works
directly on the system calendar provider, so any source synced to your
device — Nextcloud via DAVx5, Google, local, WebCal subscriptions — shows up
automatically, and changes you make sync back the same way.

Create, edit and delete events, including recurring events with scoped
changes (only this event / this and all following / the whole series) and a
simple repeat picker. Calendula also delivers your event reminders as
notifications — tap one and you're on the event.

Optionally, show your contacts' birthdays, anniversaries and other special
dates in your calendar. You turn this on yourself; contacts are read only on
your device, are never uploaded, and are never changed — Calendula only
mirrors the dates into local calendars you fully control.

The differentiator is the design: real Material 3 Expressive throughout,
with dynamic color, expressive motion, and expressive shapes.

Privacy: zero telemetry, no analytics, no network access — your data never
leaves the device.

Versions

Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.

Download F-Droid
  • Version 2.21.0 (22100) suggested Added on Sep 26, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 10 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • run foreground service
      Allows the app to make use of foreground services.
    • show notifications
      Allows the app to show notifications
    • Read calendar events and details
      This app can read all calendar events stored on your phone and share or save your calendar data.
    • read your contacts
      Allows the app to read data about your contacts stored on your phone. Apps will also have access to the accounts on your phone that have created contacts. This may include accounts created by apps you have installed. This permission allows apps to save your contact data, and malicious apps may share contact data without your knowledge.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • ask to ignore battery optimizations
      Allows an app to ask for permission to ignore battery optimizations for that app.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • add or modify calendar events and send email to guests without owners' knowledge
      This app can add, remove, or change calendar events on your phone. This app can send messages that may appear to come from calendar owners, or change events without notifying their owners.
    • de.jeanlucmakiola.calendula.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 6.8 MiB PGP Signature | Build Log

  • New in version 2.20.4
    Fixed
    • The app no longer reopens the event you last came in on. Opening an event from a reminder or a widget made it return to that event on every later launch, or show an error screen once the event was gone.
    • "Today" works in the Agenda again. It now scrolls the list back to today, and stays offered while you are scrolled away from it.
  • Version 2.20.4 (22004) - Added on Sep 22, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 10 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • run foreground service
      Allows the app to make use of foreground services.
    • show notifications
      Allows the app to show notifications
    • Read calendar events and details
      This app can read all calendar events stored on your phone and share or save your calendar data.
    • read your contacts
      Allows the app to read data about your contacts stored on your phone. Apps will also have access to the accounts on your phone that have created contacts. This may include accounts created by apps you have installed. This permission allows apps to save your contact data, and malicious apps may share contact data without your knowledge.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • ask to ignore battery optimizations
      Allows an app to ask for permission to ignore battery optimizations for that app.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • add or modify calendar events and send email to guests without owners' knowledge
      This app can add, remove, or change calendar events on your phone. This app can send messages that may appear to come from calendar owners, or change events without notifying their owners.
    • de.jeanlucmakiola.calendula.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 6.8 MiB PGP Signature | Build Log

  • New in version 2.20.3
    Fixed
    • A custom Agenda range no longer crashes the app in French. Choosing a custom range — or just typing a number into that field — closed the app on any phone set to French, and only a range of exactly one day escaped it. Other languages were never affected.
  • Version 2.20.3 (22003) - Added on Sep 14, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 10 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • run foreground service
      Allows the app to make use of foreground services.
    • show notifications
      Allows the app to show notifications
    • Read calendar events and details
      This app can read all calendar events stored on your phone and share or save your calendar data.
    • read your contacts
      Allows the app to read data about your contacts stored on your phone. Apps will also have access to the accounts on your phone that have created contacts. This may include accounts created by apps you have installed. This permission allows apps to save your contact data, and malicious apps may share contact data without your knowledge.
    • run at startup
      Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
    • ask to ignore battery optimizations
      Allows an app to ask for permission to ignore battery optimizations for that app.
    • Schedule precisely timed actions
      This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
    • Schedule alarms or event reminders
      This app can schedule actions like alarms and reminders to notify you at a desired time in the future.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • add or modify calendar events and send email to guests without owners' knowledge
      This app can add, remove, or change calendar events on your phone. This app can send messages that may appear to come from calendar owners, or change events without notifying their owners.
    • de.jeanlucmakiola.calendula.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 6.7 MiB PGP Signature | Build Log