n8n
Free and source-available fair-code licensed workflow automation tool. Easily automate tasks across different services.
Top Related Projects
Create agents that monitor and act on your behalf. Your agents are standing by!
The Modern Data Stack 🐰 — Directus is an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.
Your backend, minus the hassle.
🔥 🔥 🔥 Open Source Airtable Alternative
Low-code platform for building business applications. Connect to databases, cloud storages, GraphQL, API endpoints, Airtable, Google sheets, OpenAI, etc and build apps using drag and drop application builder. Built using JavaScript/TypeScript. 🚀
Low code platform for building business apps and workflows in minutes. Supports PostgreSQL, MySQL, MariaDB, MSSQL, MongoDB, Rest API, Docker, K8s, and more 🚀
Quick Overview
n8n is an open-source workflow automation tool that allows users to connect various services and applications to create complex automated workflows. It provides a visual, node-based approach to building workflows, making it accessible for both technical and non-technical users.
Pros
- Extensive library of pre-built nodes for popular services and applications
- Self-hosted option for enhanced privacy and control
- Visual workflow builder with a user-friendly interface
- Highly customizable with the ability to create custom nodes and functions
Cons
- Steeper learning curve compared to some simpler automation tools
- Limited community support compared to more established platforms
- Some advanced features may require coding knowledge
- Documentation can be inconsistent or lacking for certain features
Getting Started
To get started with n8n, follow these steps:
-
Install n8n using npm:
npm install n8n -g
-
Start n8n:
n8n start
-
Open your browser and navigate to
http://localhost:5678
to access the n8n editor. -
Create a new workflow by clicking the "+" button in the top-right corner.
-
Add nodes to your workflow by dragging them from the node panel on the left.
-
Configure each node by setting up the required parameters and connections.
-
Save and activate your workflow to start the automation process.
For more detailed instructions and advanced usage, refer to the official n8n documentation at https://docs.n8n.io/.
Competitor Comparisons
Create agents that monitor and act on your behalf. Your agents are standing by!
Pros of Huginn
- More mature project with a longer history and established community
- Wider range of pre-built agents for various tasks
- Self-hosted solution with full control over data and privacy
Cons of Huginn
- Less user-friendly interface, steeper learning curve
- Limited visual workflow builder compared to n8n
- Slower development pace and fewer recent updates
Code Comparison
Huginn (Ruby):
class Agents::WebsiteAgent < Agent
include WebRequestConcern
include FormConfigurable
can_dry_run!
can_order_created_events!
n8n (TypeScript):
export class HttpRequest implements INodeType {
description: INodeTypeDescription = {
displayName: 'HTTP Request',
name: 'httpRequest',
icon: 'fa:globe',
group: ['input'],
Both projects aim to provide automation and workflow capabilities, but they differ in implementation and focus. Huginn is Ruby-based and emphasizes agent-based automation, while n8n is built with TypeScript and offers a more visual, node-based approach to workflow creation. n8n has gained popularity more recently due to its modern interface and active development, while Huginn has a longer history and a dedicated community of users who appreciate its flexibility and self-hosted nature.
The Modern Data Stack 🐰 — Directus is an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.
Pros of Directus
- More focused on content management and database administration
- Offers a user-friendly interface for non-technical users
- Provides robust access control and permissions management
Cons of Directus
- Less versatile for general automation tasks
- Limited integration options compared to n8n
- Steeper learning curve for developers due to its specific architecture
Code Comparison
Directus (TypeScript):
const item = await directus.items('articles').createOne({
title: 'My Article',
content: 'Lorem ipsum dolor sit amet'
});
n8n (JavaScript):
const newItem = {
json: {
title: 'My Article',
content: 'Lorem ipsum dolor sit amet'
}
};
await items.addItem.execute.call(this, newItem);
Both repositories offer different approaches to data management and automation. Directus excels in content management with a user-friendly interface, while n8n provides a more flexible platform for various automation tasks. Directus has a steeper learning curve but offers robust access control, whereas n8n is more accessible for general automation needs. The code examples demonstrate the different approaches to creating items in each system, with Directus using a more straightforward API and n8n employing a node-based execution model.
Your backend, minus the hassle.
Pros of Appwrite
- More comprehensive backend-as-a-service solution, offering authentication, databases, storage, and more out-of-the-box
- Stronger focus on security features, including built-in encryption and user management
- Better suited for mobile and web application development with SDKs for multiple platforms
Cons of Appwrite
- Less flexible for general automation tasks compared to n8n's workflow-based approach
- Steeper learning curve for developers not familiar with backend-as-a-service concepts
- More limited in terms of third-party integrations compared to n8n's extensive node library
Code Comparison
Appwrite (user authentication):
const sdk = new Appwrite();
sdk
.setEndpoint('https://[HOSTNAME_OR_IP]/v1')
.setProject('[PROJECT_ID]');
const account = sdk.account;
const promise = account.create('[USER_ID]', 'email@example.com', 'password');
n8n (HTTP request node):
const httpRequest = {
url: 'https://api.example.com/data',
method: 'GET',
headers: {
'Authorization': 'Bearer {{$node["Credentials"].data.accessToken}}'
}
};
Both repositories offer valuable tools for developers, but they serve different purposes. Appwrite is more focused on providing a complete backend solution, while n8n excels in workflow automation and integrations.
🔥 🔥 🔥 Open Source Airtable Alternative
Pros of NocoDB
- Focused on creating and managing databases with a spreadsheet-like interface
- Offers a more user-friendly approach for non-technical users to work with databases
- Provides built-in authentication and role-based access control
Cons of NocoDB
- Limited in scope compared to n8n's wide range of automation capabilities
- Fewer integrations with external services and APIs
- Less flexibility for complex workflows and data transformations
Code Comparison
NocoDB (SQL query generation):
const sqlClient = await this.getSqlClient();
const query = await sqlClient.knex('users').select('*').where('age', '>', 18).toQuery();
n8n (workflow node configuration):
const node = {
type: 'Function',
parameters: {
functionCode: 'return items.map(item => ({ ...item, age: item.age + 1 }));'
}
};
While NocoDB focuses on database operations and query generation, n8n provides a more versatile platform for creating complex workflows and integrations across various services. NocoDB is better suited for users who need a simple, spreadsheet-like interface for database management, while n8n offers more extensive automation capabilities for a wider range of use cases.
Low-code platform for building business applications. Connect to databases, cloud storages, GraphQL, API endpoints, Airtable, Google sheets, OpenAI, etc and build apps using drag and drop application builder. Built using JavaScript/TypeScript. 🚀
Pros of ToolJet
- More focused on building internal tools and dashboards
- Offers a visual app builder with drag-and-drop functionality
- Includes built-in components for rapid UI development
Cons of ToolJet
- Less extensive integration options compared to n8n
- Smaller community and ecosystem
- More limited in terms of complex workflow automation
Code Comparison
ToolJet (JavaScript):
import React from 'react';
import { Text } from '@tooljet/plugins/components/text';
export const MyComponent = () => {
return <Text value="Hello, ToolJet!" />;
};
n8n (TypeScript):
import { INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
export class MyCustomNode implements INodeType {
description: INodeTypeDescription = {
displayName: 'My Custom Node',
name: 'myCustomNode',
group: ['transform'],
version: 1,
description: 'Basic Example Node',
defaults: { name: 'My Custom Node' },
inputs: ['main'],
outputs: ['main'],
};
async execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {
// Node logic here
}
}
Both ToolJet and n8n are open-source platforms for building applications and automations. ToolJet excels in creating internal tools with a user-friendly interface, while n8n offers more extensive workflow automation capabilities and integrations. The choice between them depends on the specific use case and required functionality.
Low code platform for building business apps and workflows in minutes. Supports PostgreSQL, MySQL, MariaDB, MSSQL, MongoDB, Rest API, Docker, K8s, and more 🚀
Pros of Budibase
- More focused on rapid application development and low-code solutions
- Offers a visual interface for building web applications
- Includes built-in user authentication and role-based access control
Cons of Budibase
- Less extensive integration options compared to n8n
- More limited in terms of complex workflow automation
- Steeper learning curve for developers used to traditional coding
Code Comparison
Budibase (JavaScript):
export function myCustomComponent() {
return {
template: `<div>Hello, Budibase!</div>`,
props: {},
setup() {
// Component logic here
},
}
}
n8n (TypeScript):
import { INodeType, INodeTypeDescription } from 'n8n-workflow';
export class MyCustomNode implements INodeType {
description: INodeTypeDescription = {
displayName: 'My Custom Node',
name: 'myCustomNode',
group: ['transform'],
version: 1,
description: 'Basic Example Node',
defaults: {
name: 'My Custom Node',
},
inputs: ['main'],
outputs: ['main'],
};
// Node logic here
}
Both repositories offer unique approaches to workflow automation and application development. Budibase focuses on low-code solutions and rapid application development, while n8n provides more extensive integration options and complex workflow automation capabilities. The choice between the two depends on specific project requirements and user preferences.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
n8n - Workflow automation tool
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.
Demo
:tv: A short video (< 5 min) that goes over key concepts of creating workflows in n8n.
Available integrations
n8n has 200+ different nodes to automate workflows. The list can be found on: https://n8n.io/integrations
Documentation
The official n8n documentation can be found on our documentation website
Additional information and example workflows on the n8n.io website
The release notes can be found here and the list of breaking changes here.
Usage
- :books: Learn how to use it from the command line
- :whale: Learn how to run n8n in Docker
Start
You can try n8n without installing it using npx. You must have Node.js installed. From the terminal, run:
npx n8n
This command will download everything that is needed to start n8n. You can then access n8n and start building workflows by opening http://localhost:5678.
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
Build with LangChain and AI in n8n (beta)
With n8n's LangChain nodes you can build AI-powered functionality within your workflows. The LangChain nodes are configurable, meaning you can choose your preferred agent, LLM, memory, and so on. Alongside the LangChain nodes, you can connect any n8n node as normal: this means you can integrate your LangChain logic with other data sources and services.
Learn more in the documentation.
Support
If you have problems or questions go to our forum, we will then try to help you asap:
Jobs
If you are interested in working for n8n and so shape the future of the project check out our job posts
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 :bug: ? Or maybe you have a nice feature :sparkles: to contribute ? The CONTRIBUTING guide will help you get your development environment ready in minutes.
License
n8n is fair-code distributed under the Sustainable Use License and the n8n Enterprise License.
Proprietary licenses are available for enterprise customers. Get in touch
Additional information about the license model can be found in the docs.
Top Related Projects
Create agents that monitor and act on your behalf. Your agents are standing by!
The Modern Data Stack 🐰 — Directus is an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.
Your backend, minus the hassle.
🔥 🔥 🔥 Open Source Airtable Alternative
Low-code platform for building business applications. Connect to databases, cloud storages, GraphQL, API endpoints, Airtable, Google sheets, OpenAI, etc and build apps using drag and drop application builder. Built using JavaScript/TypeScript. 🚀
Low code platform for building business apps and workflows in minutes. Supports PostgreSQL, MySQL, MariaDB, MSSQL, MongoDB, Rest API, Docker, K8s, and more 🚀
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot