Free and source-available fair-code licensed workflow automation tool. Easily automate tasks across different services.
Find a file
Omar Ajoue e53efdd337
Separate webhooks from core (#1408)
* Unify execution ID across executions

* Fix indentation and improved comments

* WIP: saving data after each node execution

* Added on/off to save data after each step, saving initial data and retries working

* Fixing lint issues

* Fixing more lint issues

*  Add bull to execute workflows

* 👕 Fix lint issue

*  Add graceful shutdown to worker

*  Add loading staticData to worker

* 👕 Fix lint issue

*  Fix import

* Changed tables metadata to add nullable to stoppedAt

* Reload database on migration run

* Fixed reloading database schema for sqlite by reconnecting and fixing postgres migration

* Added checks to Redis and exiting process if connection is unavailable

* Fixing error with new installations

* Fix issue with data not being sent back to browser on manual executions with defined destination

* Merging bull and unify execution id branch fixes

* Main process will now get execution success from database instead of redis

* Omit execution duration if execution did not stop

* Fix issue with execution list displaying inconsistant information information while a workflow is running

* Remove unused hooks to clarify for developers that these wont run in queue mode

* Added active pooling to help recover from Redis crashes

* Lint issues

* Changing default polling interval to 60 seconds

* Removed unnecessary attributes from bull job

* Added webhooks service and setting to disable webhooks from main process

* Fixed executions list when running with queues. Now we get the list of actively running workflows from bull.

* Add option to disable deregistration of webhooks on shutdown

* Rename WEBHOOK_TUNNEL_URL to WEBHOOK_URL keeping backwards compat.

* Added auto refresh to executions list

* Improvements to workflow stop process when running with queues

* Refactor queue system to use a singleton and avoid code duplication

* Improve comments and remove unnecessary commits

* Remove console.log from vue file

* Blocking webhook process to run without queues

* Handling execution stop graciously when possible

* Removing initialization of all workflows from webhook process

* Refactoring code to remove code duplication for job stop

* Improved execution list to be more fluid and less intrusive

* Fixing workflow name for current executions when auto updating

*  Right align autorefresh checkbox

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-02-09 23:32:40 +01:00
.github 🐳 Run nightly build one hour earlier 2020-12-31 12:17:46 +01:00
assets 📚 Add back images for README files 2020-07-08 12:29:29 +02:00
docker Separate webhooks from core (#1408) 2021-02-09 23:32:40 +01:00
packages Separate webhooks from core (#1408) 2021-02-09 23:32:40 +01:00
.dockerignore 🐳 Add .dockerignore to make docker build much faster (#1349) 2021-01-20 08:47:10 +01:00
.editorconfig enhance .editorconfig and apply formatting cleanup to last commit 2020-04-06 14:04:59 -04:00
.gitignore 🎨 Extract postgres functionality (#737) 2020-07-10 10:48:19 +02:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2019-06-23 17:48:38 +02:00
CONTRIBUTING.md 📚 Improve install instructions (#924) 2020-09-03 12:45:54 +02:00
CONTRIBUTOR_LICENSE_AGREEMENT.md 📚 Add Contributor License Agreement 2019-10-25 22:21:18 +02:00
lerna.json Initial commit to release 2019-06-23 12:35:23 +02:00
LICENSE.md 📚 License text fix 2020-09-15 07:55:09 +02:00
package.json 👕 Fix lint issue 2020-07-14 13:59:37 +02:00
README.md 🔨 Add links to changelog and breaking changes (#1362) 2021-01-20 12:09:28 +01:00

n8n - Workflow Automation Tool

n8n.io - Workflow Automation

n8n is an extendable workflow automation tool. With a fair-code distribution model, n8n will always have visible source code, be available to self-host, and allow you to add your own custom functions, logic and apps. n8n's node-based approach makes it highly versatile, enabling you to connect anything to everything.

n8n.io - Screenshot

Demo

📺 A short demo (< 3 min) which shows how to create a simple workflow which automatically sends a new Slack notification every time a Github repository received or lost a star.

Available integrations

n8n has 200+ different nodes to automate workflows. The list can be found on: https://n8n.io/nodes

Documentation

The official n8n documentation can be found under: https://docs.n8n.io

Additional information and example workflows on the n8n.io website: https://n8n.io

The changelog can be found here and the list of breaking changes here.

Usage

Start

Execute: npm run start

n8n.cloud

Sign-up for an n8n.cloud account.

While n8n.cloud and n8n are the same in terms of features, n8n.cloud provides certain conveniences such as:

  • Not having to set up and maintain your n8n instance
  • Managed OAuth for authentication
  • Easily upgrading to the newer n8n versions

Support

If you have problems or questions go to our forum, we will then try to help you asap:

https://community.n8n.io

Jobs

If you are interested in working for n8n and so shape the future of the project check out our job posts:

https://n8n.join.com

What does n8n mean and how do you pronounce it?

Short answer: It means "nodemation" and it 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

Development Setup

Have you found a bug 🐛 ? Or maybe you have a nice feature to contribute ? The CONTRIBUTING guide will help you get your development environment ready in minutes.

License

n8n is fair-code distributed under Apache 2.0 with Commons Clause license.

Additional information about license can be found in the FAQ.