nextcloud / nextcloud/calendar
Aggregate view: merge multiple calendars into a single composite calendar
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.
In environments with many calendars (rooms, groups, users, resources), it is often necessary to create a single, aggregated view.
Examples:
- A parish wants to show “All rooms at location X” in one combined view.
- A school needs “All sports facilities” calendar.
- A municipality wants “All public events” calendar.
Currently, the only way to achieve this is:
- Share each calendar individually.
- Ask users to subscribe to all relevant calendars and manually overlay them.
- Or merge ICS files externally (via scripts or third-party tools).
This is cumbersome and error-prone. Non-technical users cannot easily manage such setups.
Describe the solution you'd like
A feature to define an aggregate calendar inside Nextcloud, which combines selected calendars into one read-only composite view.
- Admin or user can select which calendars should be included.
- The system creates a new virtual calendar that contains all events from the selected ones.
- The aggregate calendar can be shared or published like any normal calendar (including as ICS feed).
- Events retain original attributes (title, category, resource) but optionally can be anonymized (only “busy” info).
Describe alternatives you've considered
- Manual ICS merge scripts: technically possible but requires external tooling and maintenance.
- Subscribing to multiple calendars in clients: works but does not scale and is not shareable as one combined feed.
- Dashboard widgets: show multiple calendars, but not in one unified calendar.
Additional context
- This feature would be extremely valuable in parish/municipal settings, where different rooms and groups are managed separately but a single “public calendar” is needed for the website or notice board.
- It would also simplify life in schools, NGOs, or companies with multiple teams, as they could provide an “all-hands overview” calendar without manual effort.
- Many competing solutions (Exchange, Google Calendar, Groupware systems) already provide aggregate or category-based views.
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
No files, tests, or entry points are named. Start by mapping how calendars are selected, represented, shared, and published as ICS feeds, then determine how a read-only composite calendar would preserve or anonymize event attributes. Done means selected calendars appear as one shareable or publishable aggregate without manual external merging.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- full-stack
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100