0da398b0e4
* ✨ change FE to handle new object type * 🚸 improve UX of handling invalid credentials * 🚧 WIP * 🎨 fix typescript issues * 🐘 add migrations for all supported dbs * ✏️ add description to migrations * ⚡ add credential update on import * ⚡ resolve after merge issues * 👕 fix lint issues * ⚡ check credentials on workflow create/update * update interface * 👕 fix ts issues * ⚡ adaption to new credentials UI * 🐛 intialize cache on BE for credentials check * 🐛 fix undefined oldCredentials * 🐛 fix deleting credential * 🐛 fix check for undefined keys * 🐛 fix disabling edit in execution * 🎨 just show credential name on execution view * ✏️ remove TODO * ⚡ implement review suggestions * ⚡ add cache to getCredentialsByType * ⏪ use getter instead of cache * ✏️ fix variable name typo * 🐘 include waiting nodes to migrations * 🐛 fix reverting migrations command * ⚡ update typeorm command * ✨ create db:revert command * 👕 fix lint error * ✨ Add optional authenticate method to credentials * ⚡ Simplify code and add authentication support to MattermostApi * 👕 Fix lint issue * ⚡ Add support to own-mode * 👕 Fix lint issue * ✨ Add support for predefined auth types bearer and headerAuth * ⚡ Make sure that DateTime Node always returns strings * ⚡ Add support for moment types to If Node * ⚡ Make it possible for HTTP Request Node to use all credential types * ✨ Add basicAuth support * Add a new dropcontact node * ✨ First basic implementation of mainly JSON based nodes * ✨ Add fixedCollection support, added value parameter and expression support for value and property * Improvements to #2389 * ⚡ Add credentials verification * ⚡ Small improvement * ⚡ set default time to 45 seconds * ✨ Add support for preSend and postReceive methods * ➕ Add lodash merge and set depedency to workflow * 👕 Fix lint issue * ⚡ Improvements * ⚡ Improvements * ⚡ Improvements * ⚡ Improvements * ⚡ Improvements * 🐛 Set siren and language correctly * ⚡ Add support for requestDefaults * ⚡ Add support for baseURL to httpRequest * ⚡ Move baseURL to correct location * ✨ Add support for options loading * 🐛 Fix error with fullAccess nodes * ✨ Add credential test functionality * 🐛 Fix issue with OAuth autentication and lint issue * ⚡ Fix build issue * 🐛 Fix issue that url got always overwritten to empty * ✨ Add pagination support * ⚡ Code fix required after merge * ⚡ Remove not needed imports * ⚡ Fix credential test * ✨ Add expression support for request properties and $self support on properties * ⚡ Rename $self to $value * 👕 Fix lint issue * ⚡ Add example how to send data in path * ✨ Make it possible to not sent in dot notation * ✨ Add support for postReceive:rootProperty * ⚡ Fix typo * ✨ Add support for postReceive:set * ⚡ Some fixes * ⚡ Small improvement * ;zap: Separate RoutingNode code * ⚡ Simplify code and fix bug * ⚡ Remove unused code * ✨ Make it possible to define "request" and "requestProperty" on options * 👕 Fix lint issue * ⚡ Change $credentials variables name * ✨ Enable expressions and access to credentials in requestDefaults * ⚡ Make parameter option loading use RoutingNode.makeRoutingRequest * ✨ Allow requestOperations overwrite on LoadOptions * ✨ Make it possible to access current node parameters in loadOptions * ⚡ Rename parameters variable to make future proof * ⚡ Make it possible to use offset-pagination with body * ✨ Add support for queryAuth * ⚡ Never return more items than requested * ✨ Make it possible to overwrite requestOperations on parameter and option level * 👕 Fix lint issue * ✨ Allow simplified auth also with regular nodes * ✨ Add support for receiving binary data * 🐛 Fix example node * ⚡ Rename property "name" to "displayName" in loadOptions * ⚡ Send data by default as "query" if nothing is set * ⚡ Rename $self to $parent * ⚡ Change to work with INodeExecutionData instead of IDataObject * ⚡ Improve binaryData handling * ⚡ Property design improvements * ⚡ Fix property name * 🚨 Add some tests * ⚡ Add also test for request * ⚡ Improve test and fix issues * ⚡ Improvements to loadOptions * ⚡ Normalize loadOptions with rest of code * ⚡ Add info text * ✨ Add support for $value in postReceive * 🚨 Add tests for RoutingNode.runNode * ⚡ Remove TODOs and make url property optional * ⚡ Fix bug and lint issue * 🐛 Fix bug that not the correct property got used * 🚨 Add tests for CredentialsHelper.authenticate * ⚡ Improve code and resolve expressions also everywhere for loadOptions and credential test requests * ✨ Make it possible to define multiple preSend and postReceive actions * ✨ Allow to define tests on credentials * ⚡ Remove test data * ⬆️ Update package-lock.json file * ⚡ Remove old not longer used code Co-authored-by: Ben Hesseldieck <b.hesseldieck@gmail.com> Co-authored-by: Mutasem <mutdmour@gmail.com> Co-authored-by: PaulineDropcontact <pauline@dropcontact.io> Co-authored-by: ricardo <ricardoespinoza105@gmail.com> |
||
---|---|---|
.. | ||
bin | ||
commands | ||
config | ||
migrations | ||
packages/cli | ||
src | ||
templates | ||
test | ||
BREAKING-CHANGES.md | ||
LICENSE.md | ||
nodemon.json | ||
package.json | ||
README.md | ||
tsconfig.json | ||
tslint.json |
n8n - Workflow Automation Tool
n8n is a free and open fair-code distributed node-based Workflow Automation Tool. You can self-host n8n, easily extend it, and even use it with internal tools.
Contents
- Demo
- Getting Started
- Available integrations
- Documentation
- Create Custom Nodes
- Contributing
- What does n8n mean and how do you pronounce it
- Support
- Jobs
- Upgrading
- License
Demo
📺 Here's a short demo (<3 min) that shows how to create a simple workflow to automatically sends a notification on Slack every time a GitHub repository gets starred or un-starred.
Getting Started
There are a couple of ways to get started with n8n.
Use npx
To spin up n8n using npx, you can run:
npx n8n
It will download everything that is needed to start n8n.
You can then access n8n by opening: http://localhost:5678
Note: The minimum required version for Node.js is v14.15. Make sure to update Node.js to v14.15 or above.
Run with Docker
To play around with n8n, you can also start it using Docker:
docker run -it --rm \
--name n8n \
-p 5678:5678 \
n8nio/n8n
Be aware that all the data will be lost once the Docker container gets removed. To persist the data mount the ~/.n8n
folder:
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
n8nio/n8n
n8n also offers a Docker image for Raspberry Pi: n8nio/n8n:latest-rpi
.
Refer to the documentation for more information on the Docker setup.
Install with npm
To install n8n globally using npm:
npm install n8n -g
After the installation, start n8n running the following command:
n8n
# or
n8n start
Sign-up on 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
Available integrations
n8n has 280+ different nodes that allow you to connect various services and build your automation workflows. You can find the list of all the integrations at https://n8n.io/integrations
Documentation
To learn more about n8n, refer to the official documentation here: https://docs.n8n.io
You can find additional information and example workflows on the n8n.io website.
Create Custom Nodes
You can create custom nodes for n8n. Follow the instructions mentioned in the documentation to create your node: Creating nodes
Contributing
🐛 Did you find a bug?
✨ Do you want to contribute a feature?
The CONTRIBUTING guide will help you set up your development environment.
You can find more information on how you can contribute to the project on our documentation: How can I contribute?
What does n8n mean, and how do you pronounce it?
Short answer: n8n is an abbreviation for "nodemation", and it is pronounced as n-eight-n.
Long answer: In n8n, you build your automation ("-mation") workflows by connecting different nodes in the Editor UI. The project is also built using Node.js. As a consequence, the project was named nodemation.
However, the name was long, and it wouldn't be a good idea to use such a long name in the CLI. Hence, nodemation got abbreviated as "n8n" (there are eight characters between the first and the last n!).
Support
If you run into issues or have any questions reach out to us via our community forum: https://community.n8n.io.
Jobs
If you are interested in working at n8n and building the project, check out the job openings.
Upgrading
Before you upgrade to the latest version, make sure to check the changelogs: Changelog
You can also find breaking changes here: Breaking Changes
License
n8n is fair-code distributed under Apache 2.0 with Commons Clause license.
Additional information on the license can be found in the FAQ