Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
Go to file
Ricardo Espinoza 0cc659eb99
feat(core): Multi-credential UX + last-used tracking + method-aware reverify
- Track lastUsedAt per webauthn credential (new column + migration)
  and surface it as "Last used X ago" in the credentials list.
- Personal settings restructured to one card per method with a nested
  credentials list, device-aware label pre-fill on the setup wizard,
  and a dashed "Add another …" button.
- Login MFA prompt picks the method the user signed in with last on
  this device (localStorage) and shows a switcher link when both
  TOTP and a webauthn credential are registered.
- Credential removal re-verifies with the same kind of authenticator
  being removed (passkey → passkey, security key → security key) via
  a narrowed allowCredentials, falling back to the TOTP / recovery
  code prompt when the device is unavailable.
- Refuse to delete the last MFA credential while 2FA is enforced.
2026-05-13 12:43:06 -04:00
.agents chore: Fix skills so they work with non-Claude harnesses (#29644) 2026-05-04 07:46:03 +00:00
.claude chore: Add community PR review skill (no-changelog) (#29626) 2026-05-05 15:25:55 +00:00
.devcontainer fix: Devcontainer build failures from hardened base image (no-changelog) (#26477) 2026-03-04 14:37:23 +00:00
.github chore: assign instance-ai cli module to instance-ai team (#30120) 2026-05-08 15:45:18 +00:00
.vscode fix(core): Force full execution data fetching for evaluation test runs (#27335) 2026-03-23 09:56:05 +00:00
assets
docker/images chore(core): Add @n8n/engine HTTP server and harness (no-changelog) (#29913) 2026-05-08 14:08:11 +00:00
packages feat(core): Multi-credential UX + last-used tracking + method-aware reverify 2026-05-13 12:43:06 -04:00
patches chore: Bump Axios, hono, vm2 and fast-xml-parser (#29829) 2026-05-07 11:54:50 +00:00
scripts test: Add Playwright smoke spec for Vite dev-server boot (#29539) 2026-05-06 08:49:25 +00:00
security ci: Refine Trivy scans, centralizes security config (#26384) 2026-03-02 07:43:29 +00:00
.actrc
.code-health-baseline.json chore: Add code-health baseline and fix janitor catalog violation (no-changelog) (#28958) 2026-04-23 09:55:55 +00:00
.dockerignore chore(core): Add @n8n/engine HTTP server and harness (no-changelog) (#29913) 2026-05-08 14:08:11 +00:00
.editorconfig
.env.local.example refactor: Remove persistBuilderSessions feature flag (#27481) 2026-03-30 12:16:07 +00:00
.git-blame-ignore-revs
.gitattributes
.gitignore feat(core): Agents as first class entities support (no-changelog) (#28017) 2026-05-06 15:44:44 +00:00
.npmignore
.npmrc
.poutine.yml ci: Add poutine custom rule for unpinned GitHub Actions detection (#24577) 2026-01-20 15:10:04 +00:00
.prettierignore
.prettierrc.js
AGENTS.md refactor(editor): Align @n8n/design-system with DS3 (no-changelog) (#28428) 2026-04-28 09:53:05 +00:00
biome.jsonc fix(editor): Resolve nodes stuck on loading after execution in instance-ai preview (#28450) 2026-04-16 19:07:19 +00:00
CHANGELOG.md 🚀 Release 2.20.0 (#29761) 2026-05-05 09:14:22 +00:00
CLAUDE.md
CODE_OF_CONDUCT.md
codecov.yml feat: Instance AI and local gateway modules (no-changelog) (#27206) 2026-04-01 21:33:38 +03:00
CONTRIBUTING.md docs: Fix frontend package links in contributing guide (#27727) 2026-04-24 13:28:52 +00:00
CONTRIBUTOR_LICENSE_AGREEMENT.md
cubic.yaml refactor(editor): Align @n8n/design-system with DS3 (no-changelog) (#28428) 2026-04-28 09:53:05 +00:00
jest.config.js chore: Update langchain packages (#29342) 2026-04-29 11:23:15 +00:00
lefthook.yml feat: Instance AI and local gateway modules (no-changelog) (#27206) 2026-04-01 21:33:38 +03:00
LICENSE_EE.md
LICENSE.md
package.json fix: Align undici override across major versions (#30028) 2026-05-08 05:51:34 +00:00
pnpm-lock.yaml Merge remote-tracking branch 'origin/master' into add-webauth-support 2026-05-08 13:39:04 -04:00
pnpm-workspace.yaml chore: Bump Axios, hono, vm2 and fast-xml-parser (#29829) 2026-05-07 11:54:50 +00:00
README.md fix(ICalendar Node): Fix Convert to ICS failing when File Name option is set (#27712) 2026-04-08 15:15:17 +00:00
renovate.json chore: Audit and secure .github/scripts shadow dependencies (#27083) 2026-03-16 10:06:27 +00:00
SECURITY.md
tsconfig.json
turbo.json ci: Scope RELEASE env to editor-ui turbo task (no-changelog) (#29585) 2026-05-05 12:21:45 +00:00
vitest.workspace.ts chore: Update node popularity data (#24145) 2026-01-12 13:57:43 +00:00

Banner image

n8n - Secure Workflow Automation for Technical Teams

n8n is a workflow automation platform that gives technical teams the flexibility of code with the speed of no-code. With 400+ integrations, native AI capabilities, and a fair-code license, n8n lets you build powerful automations while maintaining full control over your data and deployments.

n8n.io - Screenshot

Key Capabilities

  • Code When You Need It: Write JavaScript/Python, add npm packages, or use the visual interface
  • AI-Native Platform: Build AI agent workflows based on LangChain with your own data and models
  • Full Control: Self-host with our fair-code license or use our cloud offering
  • Enterprise-Ready: Advanced permissions, SSO, and air-gapped deployments
  • Active Community: 400+ integrations and 900+ ready-to-use templates

Quick Start

Try n8n instantly with npx (requires Node.js):

npx n8n

Or deploy with Docker:

docker volume create n8n_data
docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

Access the editor at http://localhost:5678

Resources

Support

Need help? Our community forum is the place to get support and connect with other users: community.n8n.io

License

n8n is fair-code distributed under the Sustainable Use License and n8n Enterprise License.

  • Source Available: Always visible source code
  • Self-Hostable: Deploy anywhere
  • Extensible: Add your own nodes and functionality

Enterprise Licenses available for additional features and support.

Additional information about the license model can be found in the docs.

Contributing

Found a bug 🐛 or have a feature idea ✨? Check our Contributing Guide for a setup guide & best practices.

Join the Team

Want to shape the future of automation? Check out our job posts and join our team!

What does n8n mean?

Short answer: It means "nodemation" and is pronounced as n-eight-n.

Long answer: "I get that question quite often (more often than I expected) so I decided it is probably best to answer it here. While looking for a good name for the project with a free domain I realized very quickly that all the good ones I could think of were already taken. So, in the end, I chose nodemation. 'node-' in the sense that it uses a Node-View and that it uses Node.js and '-mation' for 'automation' which is what the project is supposed to help with. However, I did not like how long the name was and I could not imagine writing something that long every time in the CLI. That is when I then ended up on 'n8n'." - Jan Oberhauser, Founder and CEO, n8n.io