n8n/packages/cli
Mutasem Aldmour 31dd01f9cb
feat(editor): Add Workflow Stickies (Notes) (#3154)
* N8N-3029 Add Node Type for Wokrflow Stickies/Notes

* N8N-3029 Update Content, Update Aliasses

* N8N-3030 Created N8N Sticky Component in Design System

* N8N-3030 Fixed Code spaccing Sticky Component

* N8N-3030 Fixed Code spaccing StickyStories Component

* N8N-3030 Fixed Code spaccing Markdown Component

* N8N-3030 Added Sticky Colors Pallete into Storybook, Update Color Variables for Sticky Component

* N8N-3030 Added Unfocus Event

* N8N-3030 Update Default Placeholder, Markdown Styles, Fixed Edit State, Added Text to EditState, Fixed Height of Area, Turned off Resize of textarea

* N8N-3030 Update Sticky Overflow, Update Hover States, Updated Markdown Overflow

* N8N-3030, N8N-3031 - Add Resize to Sticky, Created N8n-Resize component

* N8N-3031 Fixed Importing Components in Editor-ui

* N8N-3031 Fixed Resize Component, Fixed Gradient

* N8N-3030, N8N-3031 Update Note Description

* N8N-3032 Hotfix Building Storybook

* N8N-3032 - Select Behaviour, Changes in Resize Component, Emit on Width/Height/Top/Left Change

* N8N-3032 Update Resize Component to emmit left/top, Update Dynamic Resize on Selected Background

* N8N-3032 Updated / Dragging vs Resizing, prevent open Modal for stickies

* N8N-3032 Added ID props to n8n-sticky // dynamic id for multi resizing in NodeView

* N8N-3033 Add dynamic size Tooltip on Sticky

* N8N-3033 Updated Z-index for Sticky Component

* N8N-3033 Updated N8N-Resize Component, Fixed SelectedBackround for Sticky Component

* N8N-3033 Refactor

* N8N-3033 Focus/Defocus on TextArea

* N8N-3033 Fixed Resizing on NW Point

* N8N-3030 Save content in vuex on input change

* N8N-3033 Fixed Resizer, Save Width and Height in Vue

* N8N-3033 Hide Sticky Footer on small height/width

* N8N-3033 Fixed Resizer

* N8N-3033 Dynamic Z-index for Stickies

* N8N-3033 Dynamic Z-index for Stickies

* N8N-3033 Removed static z-index for select sticky class

* N8N-3034 Added Telemetry

* N8N-3030 Formatter

* N8N-3030 Format code

* N8N-3030 Fixed Selecting Stickies

* N8N-3033 Fixed Notifications

* N8N-3030 Added new paddings for Default Stickies

* N8N-3033 Prevent Scrolling NodeView when Sticky is in Edit mode and Mouse is Over the TextArea

* N8N-3030 Prevent double clicking to switch state of Sticky component in Edit Mode

* N8N-3033 Fixed Z-index of Stickies

* N8N-3033 Prevent delete node when in EditMode

* N8N-3030 Prevent Delete Button to delete the Sticky while in Edit Mode

* N8N-3030 Change EditMode (emit) on keyboard shortucts, update Markdown Links & Images, Added new props

* N8N-3030 Sticky Component - No padding when hiding footer text

* N8N-3033 Fix Resizing enter into Edit Mode

* N8N-3033 Selecting different nodes - exit the edit mode

* N8N-3033 Auto Select Text in text-area by default - Sticky Component

* N8N-3033 Prevent Default behaviour for CTRL + X, CTRL + A when Sticky is Active && inEditMode

* N8N-3033 Refactor Resizer, Refactor Sticky, Update zIndex inEditMode

* N8N-3033 Updated Default Text // Node-base, Storybook

* N8N-3033 Add Resizing in EditMode - Components update

* N8N-3033 Fixed Footer - Show/Hide on Resize in EditMode

* N8N-3033 Fix ActiveSticky on Init

* N8N-3033 Refactor Sticky in Vuex, Fixed Init Sticky Tweaks, Prevent Modal Openning, Save on Keyboard shortcuts

* Stickies - Update Note node with new props

* N8N-3030 Updated Default Note text, Update the Markdown Link

* N8N-3030 CMD-C does not copy the text fix

* N8N-3030 Fix Max Zoom / Zoom out shortcuts disabled in editState

* N8N-3030 Z-index fixed during Edit Mode typing

* N8N-3030 Prevent Autoselect Text in Stickies if the text is not default

* N8N-3030 Fixed ReadOnly Bugs / Prevent showing Tooltip, Resizing

* N8N-3030 Added Sticky Creator Button

* N8N-3030 Update Icon / Sticky Creator Button

* N8N-3033 Update Sticky Icon / StickyCreator Button

* update package lock

* 🔩 update note props

* 🚿 clean props

* 🔧 linting

* 🔧 fix spacing

* remove resize component

* remove resize component

* ✂ clean up sticky

* revert back to height width

* revert back to height/width

* replace zindex property

* replace default text property

* use i18n to translate

* update package lock

* move resize

* clean up how height/width are set

* fix resize for sticky to support left/top

* clean up resize

* fix lasso/highlight bug

* remove unused props

* fix zoom to fit

* fix padding for demo view

* fix readonly

* remove iseditable, use active state

* clean up keyboard events

* chang button size, no edit on insert

* scale resizing correctly

* make active on resize

* fix select on resize/move

* use outline icon

* allow for multiple line breaks

* fix multi line bug

* fix edit mode outline

* keep edit open as one resizes

* respect multiple spaces

* fix scrolling bug

* clean up hover impl

* clean up references to note

* disable for rename

* fix drifting while drag

* fix mouse cursor on resize

* fix sticky min height

* refactor resize into component

* fix pulling too far bug

* fix delete/cut all bug

* fix padding bottom

* fix active change on resize

* add transition to button

* Fix sticky markdown click

* add solid fa icon

* update node graph, telemetry event

* add snapping

* change alt text

* update package lock

* fix bug in button hover

* add back transition

* clean up resize

* add grid size as param

* remove breaks

* clean up markdown

* lint fixes

* fix spacing

* clean up markdown colors

* clean up classes in resize

* clean up resize

* update sticky story

* fix spacing

* clean up classes

* revert change

* revert change

* revert change

* clean up sticky component

* remove unused component

* remove unnessary data

* remove unnessary data

* clean up actions

* clean up sticky size

* clean up unnessary border style

* fix bug

* replace sticky note name

* update description

* remove support for multi spaces

* update tracking name

* update telemetry reqs

* fix enter bug

* update alt text

* update sticky notes doc url

* fix readonly bug

* update class name

* update quote marks

Co-authored-by: SchnapsterDog <olivertrajceski@yahoo.com>
2022-04-25 12:38:37 +02:00
..
bin Remove fibers to support Node LTS 16 (#2672) 2022-02-04 19:13:26 +01:00
commands 🎨 Centralize error throwing for encryption keys and credentials (#3105) 2022-04-15 08:00:47 +02:00
config Enable esModuleInterop compiler option and upgrade to TypeScript 4.6 (#3106) 2022-04-08 23:32:08 +02:00
migrations Enable esModuleInterop compiler option and upgrade to TypeScript 4.6 (#3106) 2022-04-08 23:32:08 +02:00
src feat(editor): Add Workflow Stickies (Notes) (#3154) 2022-04-25 12:38:37 +02:00
templates Adjustions for utilizing an external OAuth Hook (#945) 2020-09-11 12:15:06 +02:00
test test(core): Implement timeout in SMTP tests (#3152) 2022-04-22 12:38:53 +02:00
BREAKING-CHANGES.md fix(GraphQL Node)!: Correctly report errors returned by the API (#3071) 2022-04-01 14:38:26 +02:00
jest.config.js feat: Add User Management (#2636) 2022-03-14 14:46:32 +01:00
LICENSE.md 📚 Add missing full stop to license text 2022-03-25 09:54:00 +01:00
nodemon.json Revert "🔀 Merge branch 'oauth-support' of https://github.com/tildabio/n8n" 2020-01-10 14:26:06 -06:00
package.json 🔖 Release n8n@0.173.1 2022-04-19 13:54:30 +02:00
README.md 📜 Change to the Sustainable Use License #2932 2022-03-17 10:15:24 +01:00
tsconfig.json Enable esModuleInterop compiler option and upgrade to TypeScript 4.6 (#3106) 2022-04-08 23:32:08 +02:00

n8n - Workflow Automation Tool

n8n.io - Workflow Automation

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.

n8n.io - Screenshot

Contents

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 the Sustainable Use License.

Additional information on the license can be found in the FAQ