From c01b58176a97327e08c79930ee34c0e458c785fd Mon Sep 17 00:00:00 2001 From: Tanay Pant Date: Tue, 28 Apr 2020 11:50:20 +0200 Subject: [PATCH 1/3] =?UTF-8?q?=E2=9C=85=20Added=20checklist=20to=20go=20t?= =?UTF-8?q?hrough=20before=20submitting=20a=20node?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CONTRIBUTING.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d07ff701a6..c8629a34ff 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -191,6 +191,24 @@ When developing n8n must get restarted and the browser reloaded every time param If only the code of the node changes (the execute method) than it is not needed as each workflow automatically starts a new process and so will always load the latest code. +## Checklist before submitting a node + +If you'd like to submit a new node, please go through the following checklist. This will help us be quicker to review and merge your PR. + +- [ ] Make failing requests to the API to ensure that the errors get displayed correctly (like malformed requests or requests with invalid credentials) +- [ ] Ensure that the default values do not change and that the parameters do not get renamed, as it would break the existing workflows of the users +- [ ] Ensure that all the top-level parameters use camelCase +- [ ] Ensure that all the options are ordered alphabetically, unless a different order is needed for a specific reason +- [ ] Ensure that the parameters have the correct type +- [ ] Make sure that the file-name and the Class name are identical (case sensitive). The name under "description" in the node-code should also be identical (except that it starts with a lower-case letter and that it will never have a space) +- [ ] Names of Trigger-Nodes always have to end with "Trigger" +- [ ] Add credentials and nodes to the `package.json` file in alphanumerical order +- [ ] Use tabs in all the files except in the `package.json` file, where 4-spaces have to get used +- [ ] To make it as simple as possible for the users, check other similar nodes to ensure that they all behave similarly +- [ ] Try to add as few parameters as possible on the main level to ensure that the node doesn't appear overwhelming. It should only contain the required parameters. All the other ones should be hidden on lower levels as "Additional Parameters" or "Options" +- [ ] Create only one node per service which can do everything from "Resource" and "Options" and not a separate one for each possible operation. + + ## Extend Documentation All the files which get used in the n8n documentation on [https://docs.n8n.io](https://docs.n8n.io) From 4cd1f33c9f00a152301ff9221e44b5dbebff4b01 Mon Sep 17 00:00:00 2001 From: Tanay Pant Date: Tue, 28 Apr 2020 11:58:17 +0200 Subject: [PATCH 2/3] Add changes to table of contents --- CONTRIBUTING.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c8629a34ff..aff29c1f70 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -11,7 +11,9 @@ Great that you are here and you want to contribute to n8n - [Development Cycle](#development-cycle) - [Create Custom Nodes](#create-custom-nodes) - [Create a new node to contribute to n8n](#create-a-new-node-to-contribute-to-n8n) +- [Checklist before submitting a new node](#checklist-before-submitting-a-new-node) - [Extend Documentation](#extend-documentation) +- [Contributor License Agreement](#contributor-license-agreement) ## Code of Conduct @@ -191,7 +193,7 @@ When developing n8n must get restarted and the browser reloaded every time param If only the code of the node changes (the execute method) than it is not needed as each workflow automatically starts a new process and so will always load the latest code. -## Checklist before submitting a node +## Checklist before submitting a new node If you'd like to submit a new node, please go through the following checklist. This will help us be quicker to review and merge your PR. From 5d8101cbf0ac4c4ce0c4621ceb77498bd3944fbf Mon Sep 17 00:00:00 2001 From: Tanay Pant Date: Tue, 28 Apr 2020 13:19:37 +0200 Subject: [PATCH 3/3] Fix a few things --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index aff29c1f70..568f8fc9a7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -208,7 +208,7 @@ If you'd like to submit a new node, please go through the following checklist. T - [ ] Use tabs in all the files except in the `package.json` file, where 4-spaces have to get used - [ ] To make it as simple as possible for the users, check other similar nodes to ensure that they all behave similarly - [ ] Try to add as few parameters as possible on the main level to ensure that the node doesn't appear overwhelming. It should only contain the required parameters. All the other ones should be hidden on lower levels as "Additional Parameters" or "Options" -- [ ] Create only one node per service which can do everything from "Resource" and "Options" and not a separate one for each possible operation. +- [ ] Create only one node per service which can do everything via "Resource" and "Options" and not a separate one for each possible operation. ## Extend Documentation