Calendula
A modern calendar.
Loading…
Retry
Something went wrong.
Calendar access is required.
Grant access
No calendars configured.
Open system calendar settings
Could not read the calendar.
See all your events, beautifully
Calendula needs access to your calendar to show and manage your events. That\'s the only thing it ever asks for.
Grant calendar access
Calendar access denied
Calendula cannot show events without calendar access. You can grant it again in the system settings.
Open system settings
Try again
Stays on your device
Your calendars are read locally and never leave the phone.
All your calendars, together
Google, CalDAV, local — anything synced to the device just appears.
No tracking, ever
Zero telemetry, zero analytics, no ads.
Stays on your device · no internet permission
Previous month
Next month
Today
More actions
Open menu
Settings
Today
This week
Wk
Today
Back
Edit
Delete
Share
Share event
Couldn\'t share this event.
Delete event?
The event is removed from your calendar and from every device it syncs to.
Delete recurring event
Only this event
This and all following events
All events in the series
Edit recurring event
Couldn\'t delete the event
Calendula needs write access to delete events
Cancel
OK
New event
Close
Save
Add title
Starts
Ends
Ends before it starts
No writable calendar available
Couldn\'t save the event
Calendula needs write access to create events
More fields
Add
Add reminder
Remove reminder
Guests
Add guest
Add a guest by email…
Add from contacts
Pick address from contacts
Remove guest
Required
Optional
Calendula doesn\'t send invitations. Your calendar account may email guests when it syncs.
Stored on this device. No one is notified.
Custom
minutes
hours
days
weeks
Availability
Visibility
Color
Calendar color
Custom color
Reset
Not available for this calendar
This calendar publishes no color set. You can allow custom colors for such calendars in Settings.
This calendar may drop or overwrite the color on its next sync.
Event changed elsewhere
While you were editing, this event was changed — by sync or another app. What should happen to your changes?
Save my changes
Only fields you edited overwrite the outside change
Discard my changes
The event stays as it is now
Event deleted
This event was deleted in the meantime, for example on another device. Your changes can no longer be saved.
Does not repeat
Custom
Every
days
weeks
months
years
Ends
Never
On a date
After a number of times
times
Repeats end before the event starts
Busy
Default
Public
All day
Calendar
Unknown calendar
Location
Description
Attendees
Recurrence
Repeating event
Every day
Every week
Every month
Every year
Every %1$d days
Every %1$d weeks
Every %1$d months
Every %1$d years
%1$s on %2$s
%1$s until %2$s
%1$s, %2$d times
This event no longer exists.
Accepted
Declined
Tentative
No response
—
Reminders
Time zone
Tentative
Cancelled
Free
Private
Confidential
Organizer
Optional
Resource
Your response: %1$s
At time of event
Default reminder
- %d minute before
- %d minutes before
- %d hour before
- %d hours before
- %d day before
- %d days before
- %d week before
- %d weeks before
- %d minute
- %d minutes
- %d hour
- %d hours
- %d day
- %d days
- %d week
- %d weeks
(No title)
Event reminders
Notifications at the reminder times of your events
Never miss an event
Android doesn\'t show event reminders by itself — a calendar app has to. Let Calendula take that job.
Reminders, delivered
Every reminder on your events arrives as a notification, right on time.
Using a second calendar app?
If another app also posts reminders, you\'ll see them twice — turn them off there or here.
Change it anytime
The switch lives in Settings, under Notifications.
Turn on reminders
Not now
Snooze
Dismiss
Month
Week
Day
Agenda
View
Jump to date
Today
Today
Tomorrow
You\'re all caught up
Search
Search events
Back
Clear
Search your events by title, location or notes.
No events match “%1$s”.
Upcoming
Calendula agenda
Calendula month
Refresh
New event
Open Calendula to grant calendar access
Previous month
Next month
Today
Calendars
Settings
Back
Appearance
Theme
System
Light
Dark
Default view
Dynamic colour
Requires Android 12 or newer
Headings font
Body font
System default
Atkinson Hyperlegible
Lora
JetBrains Mono
Choose file…
Custom font
Couldn\'t read that file as a font
Week starts on
Automatic
Time format
Automatic
12-hour (2:00 PM)
24-hour (14:00)
Hour lines
Show a separator line at each hour in week and day view
Dim completed events
Fade events that have already ended in month and week view
Past events
Show
Dim
Hide
Agenda
Agenda range
How far ahead the Agenda screen lists events.
Agenda widget range
How far ahead the agenda home-screen widget lists events.
Range bar
Show a bar at the top of the agenda naming the dates shown, with a button to switch the range for the session
Today
This week
This month
Next 7 days
Next 30 days
Custom…
Days
Just for now — resets to your saved range when you reopen Calendula.
Showing all upcoming events for
- %d day
- %d days
Views
Quick-switch button
Choose which views the top-right button cycles through, and drag to reorder them. Turned-off views stay reachable from the navigation menu.
Navigation menu
Drag to reorder the views listed in the navigation menu.
Drag to reorder
New event form
Fields shown by default — everything else sits behind \"More fields\"
Focus title on new event
When you start a new event, place the cursor in the title field and open the keyboard right away.
Allow colors on unsupported calendars
Some calendars (e.g. certain CalDAV) publish no color set; a custom event color may be dropped or overwritten on their next sync. That\'s a limitation of those calendars, not something Calendula can fix.
Notifications
Event reminders
Seeing reminders twice? Another calendar app is posting them too — turn them off in one of the two.
Default reminder
All-day events
All-day reminder time
Reminders for all-day events fire at %1$s
None
Use default reminder
Amount
Set
Per-calendar reminders
Override the default per calendar — separately for timed and all-day events. A calendar can keep the default, drop it, or set its own.
Default (%1$s)
Reliable delivery
Android may delay reminders to save battery. Exempt Calendula so they arrive on time.
Exempt from battery optimisation — reminders arrive on time.
Snooze duration
Calendars
Manage calendars
Create local calendars; manage synced ones
Language
App language
System default
Help translate
Add or improve a language on Weblate
Theme, default view, week start
Quick-switch button and menu order
Default fields for new events
Event reminders
About
License
MIT
by Jean-Luc Makiola
Source
Support development
Version %1$s
Calendula app icon
Report a problem
Send a crash report or open the issue tracker
Calendars
Your calendars
No local calendars yet. Create one to keep events on this device only.
Add calendar
Turn a calendar off to remove it from the app — its events, filters and pickers. Nothing is deleted, and you can turn it back on here anytime.
Show \"%1$s\" in the app
Synced calendars
These come from accounts on your device. Create and edit them in their own app.
Manage in app
More options for %1$s
Enable all
Disable all
Add account
New calendar
Edit calendar
Name
Color
Add a description
Delete calendar?
\"%1$s\" and all of its events will be permanently removed from this device.
Couldn\'t save the change.
Backup
Local calendars aren\'t synced anywhere, so export them to an .ics file to keep a copy.
Export as .ics file
Automatic backup
Periodically export your local calendars to a folder as an .ics file.
Backup folder
Tap to choose a folder
Interval
Every %1$s
Minimum 30 minutes.
No automatic backup yet
Last backup: %1$s
Last backup failed: %1$s
Backup
Warns if automatic backups fail repeatedly.
Automatic backup failed
Calendula couldn\'t write the backup file. Check the backup folder in Settings.
- Minutes
- Hours
- Days
- Weeks
Couldn\'t export the backup.
- Exported %d event.
- Exported %d events.
Import events
Add to calendar
No events found in this file.
Couldn\'t read this file.
No writable calendar to import into. Create a local calendar first.
Import complete
Close
Some changed occurrences of recurring events were skipped.
An event without a start time was skipped.
Guest lists weren\'t imported.
An unknown time zone fell back to your device\'s.
- %d event in this file.
- %d events in this file.
- Import %d event
- Import %d events
- Imported %d event.
- Imported %d events.
- Skipped %d already in this calendar.
- Skipped %d already in this calendar.
New event
Create a new event
New event
Add Quick Settings tile
Add a “New event” tile to the Quick Settings panel.
https://gitea.jeanlucmakiola.de/makiolaj/calendula
https://gitea.jeanlucmakiola.de/makiolaj/calendula/src/branch/main/LICENSE
https://ko-fi.com/jeanlucmakiola
https://weblate.dev.jeanlucmakiola.de/engage/calendula/
Calendula crashed
Calendula closed unexpectedly last time. You can help fix it by sending this report as an issue. It stays on your device until you choose to share it, and includes no personal data or calendar content — only the technical details below.
Report
Not now
Crash report
Calendula crash report
Report copied to your clipboard
Couldn\'t open the issue tracker. The report is on your clipboard.
Thanks for reporting a crash in Calendula. Please add anything you remember about what you were doing, then submit.\n\n### What happened\n\n\n### Crash report\n%1$s\n
_(The report was too long for this link — paste it from your clipboard here.)_
https://codeberg.org/jlmakiola/calendula/issues/new
https://codeberg.org/jlmakiola/calendula/issues/new/choose