nextcloud / nextcloud/calendar
Feature Request: Support Text Templates or Smart Picker in Calendar event descriptions
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 1.2k
- Forks
- 332
- Avg merge
- 16h 13m
- Merged PRs (30d)
- 137
Description
Is your feature request related to a problem? Please describe.
Currently, when creating or editing an event in the Calendar app, the description field only allows free text input.
For many use cases, however, users would like to reuse recurring text blocks (e.g. agendas, meeting notes, instructions, standardized information, or even placeholders for protocols).
Without support for templates or the Smart Picker, this has to be copied manually from elsewhere (Text documents, Collectives, Notes, etc.), which is error-prone, time-consuming, and disrupts the workflow inside the Calendar app.
Especially in organizations, communities, and teams with repeating structures (e.g. weekly meetings, recurring appointments, community events, or service schedules), the lack of template functionality significantly reduces efficiency and consistency.
Describe the solution you'd like
It would be very useful if the Nextcloud Text Template
functionality could also be made available in the description field of Calendar events.
This would allow users to quickly insert predefined text snippets when creating or editing events, e.g. for recurring meeting structures, agenda templates, or standardized notes.
As an alternative (or in addition), making the Smart Picker available for the description field would provide a similarly powerful way to insert dynamic or structured content (links to files, Collectives pages, Deck cards, contacts, etc.).
Ideally, the integration should support:
- Inserting predefined text blocks from Text Templates directly in the event description.
- Offering Smart Picker suggestions (files, notes, Collectives pages, Deck cards) while typing.
- Keeping compatibility with markdown-style formatting already supported in the Calendar description.
This would improve efficiency, standardization, and collaboration when working with events in the Calendar app.
Describe alternatives you've considered
-
Maintaining separate template files (e.g. in Nextcloud Text, Notes, or Collectives) and copy-pasting them into the event description.
→ Works, but is slow and error-prone. -
Using recurring events with pre-filled descriptions.
→ Not flexible enough, because content often changes slightly per event. -
External integrations (e.g. with Deck or Notes) and linking them manually.
→ Adds complexity and still lacks the direct workflow inside the Calendar app.
Additional context
Many team and community use cases would benefit from this feature:
- Weekly/Monthly team meetings with standardized agenda structures.
- School or university timetables with repeating information.
- Church or community events with recurring instructions for volunteers.
- Corporate customer appointments with boilerplate notes or disclaimers.
The technical groundwork already exists with the Text Templates app and Smart Picker framework – it would "just" need to be enabled for the Calendar description field.
This would align the Calendar app with other Nextcloud apps that already support Smart Pickers and templates, providing a more consistent user experience across the platform.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the Calendar event description field and compare how the linked Text Templates app or Smart Picker framework is exposed in other Nextcloud apps. Define whether templates, Smart Picker suggestions, or both are in scope, preserve the existing markdown-style formatting, and verify insertion while creating and editing events.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100