npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@ilijazm/n8n-nodes-nextcloud-calendar

v0.1.1

Published

n8n community node for Nextcloud Calendar (CalDAV) with correct recurrence expansion and working invitations.

Readme

@ilijazm/n8n-nodes-nextcloud-calendar

An n8n community node for Nextcloud Calendar over CalDAV.

Unlike other Nextcloud/CalDAV nodes, this one:

  • Expands recurring events correctly — RRULE/RDATE/EXDATE/RECURRENCE-ID overrides are resolved into real occurrences within the requested range, and times are DST-correct (VTIMEZONE/TZID aware). A weekly all-day deadline shows up on the day it actually recurs, not on its original master date.
  • Actually sends invitations — creating/updating an event with attendees writes a proper ORGANIZER/ATTENDEE payload so Nextcloud dispatches iMIP invitation emails.
  • Returns one item per event (idiomatic n8n), with an optional "Return as single list" toggle when you want a single array item instead.
  • Is usableAsTool: true, so an AI Agent can drive it directly.

The CalDAV/iCalendar core is server-agnostic; the defaults and invitation handling are tuned for Nextcloud.

Installation

Settings → Community nodes → Install @ilijazm/n8n-nodes-nextcloud-calendar.

To use it as an AI-Agent tool on a self-hosted instance, set N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true.

Credentials

Nextcloud Calendar API — Basic auth with an app password:

| Field | Description | | --- | --- | | Server URL | e.g. https://cloud.example.com (no /remote.php/dav) | | Username | Nextcloud login name | | App Password | User Settings → Security → App passwords | | Invitation Email | The account's email, used as ORGANIZER so invitations send (must match the Nextcloud account email exactly) |

Operations

Calendar: Get Many · Create · Delete Event: Get Many · Search · Next Events · Get · Create · Update · Delete

Read operations expand recurrences within the time range by default.

Invitations — server requirements

For Nextcloud to email attendees, all of these must hold (all controlled here except the admin settings):

  1. A working mail server is configured in Nextcloud, and Settings → Groupware → "Send invitations to attendees" is on.
  2. The credential's Invitation Email matches the account's registered email (case-sensitive).
  3. External attendees are not disabled (occ config:app:set dav caldav_external_attendees_disabled --value no).

Development

npm install
npm run build        # n8n-node build (compiles + copies icons to dist/)
npm run lint         # n8n-node lint
npm test             # unit tests (recurrence engine, no server)
npm run test:integration   # Docker Nextcloud integration tests
npm run dev          # run inside a local n8n with hot reload

License

MIT