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

@opencloud-eu/n8n-nodes-opencloud

v0.1.1

Published

n8n community node for OpenCloud — file/folder/share operations against the OpenCloud API

Downloads

262

Readme

@opencloud-eu/n8n-nodes-opencloud

n8n community node for OpenCloud — files, folders and shares against the OpenCloud API.

Built on top of Libre Graph (metadata, sharing, drive enumeration) and OpenCloud WebDAV (content I/O, copy, move, delete).

Smoke workflow in the n8n editor — every operation in one chain


Operations

| Resource | Operations | | --- | --- | | Space | List | | File | Copy · Delete · Download · Move · Share · Upload | | Folder | Copy · Create · Delete · List · Move · Share | | User | Create · Delete · Get · Get Many · Update (admin only) |

Credentials

| Field | Notes | | --- | --- | | Server URL | e.g. https://opencloud.example.com | | User | username or email | | Password | app token (preferred) or account password — Basic auth | | Skip TLS verification | accept self-signed or otherwise untrusted certs |

Generate an app token from your OpenCloud profile for automation use; account passwords work for quick tests.

Install

Status: not yet published to npm. Once published, this will be installable from n8n's UI: Settings → Community Nodes → Install → @opencloud-eu/n8n-nodes-opencloud.

For now, install from source:

git clone https://github.com/opencloud-eu/n8n-nodes-opencloud.git
cd n8n-nodes-opencloud
pnpm install
pnpm build

# Then either:
#   a) symlink into your n8n custom-nodes directory
mkdir -p ~/.n8n/custom
ln -s "$(pwd)" ~/.n8n/custom/n8n-nodes-opencloud

#   b) or pack and install via the n8n UI
pnpm pack
# Settings → Community Nodes → Install → upload the .tgz

Restart n8n after either step.


Development

Requires Node.js ≥ 20.15.

pnpm install
pnpm build        # compile to dist/
pnpm test         # vitest unit tests (mocked, fast)
pnpm test:e2e     # Playwright end-to-end (see below)
pnpm lint         # n8n-node lint, strict / Cloud-compatible
pnpm typecheck

Docker dev loop

Pinned n8n in a container with this node mounted in; hot-reloads on dist/ changes via N8N_DEV_RELOAD=true:

pnpm build              # one-off before first start
docker compose up       # foreground
pnpm build:w            # in another terminal — tsc --watch

Open http://localhost:5678 and log in as [email protected] / admin. Workflow editor → add node → search OpenCloud.

Reset to a clean DB:

docker compose down -v

Sample workflow

examples/smoke-test.workflow.json exercises every operation against a real backend (the chain shown at the top of this README). Patch it with your credential id before importing:

./examples/apply-credentials.sh <credential-id> > /tmp/smoke.workflow.json

End-to-end smoke

tests/e2e/smoke.spec.ts is a Playwright test that automates the full path: log in to n8n → create the credential → import the example workflow → run from the manual trigger → assert success.

For self-contained CI-style runs the compose file ships an OpenCloud service under the ci profile:

docker compose --profile ci up -d
OPENCLOUD_URL=https://opencloud:9200 pnpm test:e2e

To target your own backend:

docker compose up -d
OPENCLOUD_URL=https://host.docker.internal:9200 pnpm test:e2e

Env vars: OPENCLOUD_URL (required), OPENCLOUD_USER / OPENCLOUD_PASSWORD (default admin/admin), N8N_URL / N8N_EMAIL / N8N_PASSWORD (defaults match the compose stack). On failure Playwright saves traces, screenshots and videos to test-results/.


License

MIT — see LICENSE.md. Copyright OpenCloud GmbH.