NextAgenda is a focused Ubuntu Touch calendar for people who want a clean agenda view and direct Nextcloud Calendar synchronization without depending on the legacy Lomiri Calendar storage stack.

A dedicated Nextcloud app token is required. Filesystem access must be OFF. Before accepting the connection, NextAgenda verifies that the token cannot access your Nextcloud Files. Tokens with filesystem access are rejected. 

Agenda first
- The main screen is one scrollable agenda.
- Every day in the loaded range is visible, including days with no events.
- Today is brought into focus when the application becomes active.
- All-day and multi-day events are shown on every relevant day.
- Common recurring events are expanded for the day on which they occur.
- Calendar colors are taken from the Nextcloud CalDAV server.

Flexible time range
- The default range is five weeks before today through five weeks after today.
- A button at the top loads five more weeks into the past.
- A button at the bottom loads five more weeks into the future.
- The application does not impose a fixed historical or future calendar limit.

Direct Nextcloud CalDAV sync
- Uses its own Nextcloud configuration instead of Ubuntu Online Accounts.
- Discovers calendars directly through Nextcloud CalDAV.
- New appointments are written to the selected calendar immediately.
- Non-recurring edits and deletes are sent directly to Nextcloud.
- While the app remains open, synchronization repeats at a configurable interval from 1 to 120 minutes.
- Calendar resources are cached in the application's private local storage so the agenda remains available between syncs.

Meetings and attendees
- New meetings can contain comma-separated attendees such as alice@example.com or Bob <bob@example.com>.
- New appointments include a Contacts picker that can select one or more address-book entries through Ubuntu Touch Content Hub.
- Selected contact cards are parsed only to obtain attendee names/email addresses and are not retained as a local address-book copy.
- Attendees are written to the VEVENT as standard iCalendar ATTENDEE properties and sent to Nextcloud instead of being lost locally.
- New attendees use RSVP=TRUE and PARTSTAT=NEEDS-ACTION.
- An organizer email is required when creating a meeting with attendees.

Backup and phone migration
- Backup and restore is available from the hamburger menu.
- Configuration is exported/imported as UTF-8 JSON through Content Hub.
- Calendar event resources and the local event cache are not included; events remain on Nextcloud and synchronize again after restore.
- Include credentials/secrets is optional and off by default. If enabled, the dedicated Nextcloud app token is written to the JSON in plaintext. Protect or delete that file after migration.
- Without secrets, non-secret connection and calendar settings are restored and the app token must be entered again.

ICS import through Ubuntu Touch Content Hub
- NextAgenda registers as a destination for Events content.
- ICS files sent by other applications can be received and imported directly to the configured default Nextcloud calendar.
- Imports are not restricted to current or future dates, so historical appointments can be added.
- Multi-event ICS files are grouped by UID before upload so recurring components for one UID stay together.

Ubuntu Touch integration
- Native Qt/QML application for Ubuntu Touch 24.04 on arm64.
- Square Calendar ICS Test logo with no pre-rounded corners, allowing the OS/store to apply the user's selected corner treatment.
- Light mode and dark mode.
- Hamburger menu at the top right.
- About dialog includes version 0.1.8.
- AppArmor requests networking plus Content Hub exchange/source access so ICS can be received and Contacts can be selected.

Current 0.1.8 scope
- Agenda view only.
- Recurring events are displayed, but recurrence editing is intentionally disabled to avoid discarding server recurrence metadata.
- Deleting a recurring item deletes the complete CalDAV resource.
- The editor currently focuses on title, dates/times, all-day state, location, description, calendar and attendees.

Privacy
- no advertising
- no analytics
- no tracking
- no telemetry
- no developer-operated cloud service
- direct communication only with the user's configured Nextcloud server
- app-private local cache for calendar resources and optional app-private storage of the Nextcloud app token when explicitly enabled

Security and appointment display

- HTML appointment descriptions and HTML location values are converted to readable plain text, including percent-encoded HTML supplied through DESCRIPTION ALTREP data URLs.
- HTTP and HTTPS URLs in appointment descriptions and locations are clickable and open through the system browser/URL handler.
- VEVENT entries containing VALARM show a notification bell in the agenda list.
- Version 0.1.8 does not schedule or emit Ubuntu Touch notifications; the bell only indicates that the calendar event contains an alarm.



NextAgenda is not affiliated with or endorsed by Nextcloud GmbH.

This app was vibe coded using an AI. The source code is published for inspection and improvement.

NextAgenda is released under MIT No Attribution, SPDX identifier MIT-0.

MIT No Attribution

Copyright 2026 Barry de Graaff

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
