nextcloud / nextcloud/calendar

Aggregate view: merge multiple calendars into a single composite calendar

Open
#7,412 2 comments 12 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

0. to triage enhancement
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.