Skip to content
/ nodemaker Public

Desktop app and CLI utility for auto-generating n8n nodes

License

Notifications You must be signed in to change notification settings

ivov/nodemaker

Repository files navigation

Nodemaker

Nodemaker

Desktop app and CLI utility to auto-generate n8n nodes
by Iván Ovejero and Erin McNulty

InstallationOperationExamplesDocumentation


Nodemaker is an automatic node generator for n8n, a workflow automation tool. Nodemaker outputs all functionality and documentation files for a node, places them in the official repos, and uploads a sample workflow to n8n.io.

Developed as a desktop app and CLI utility, in MVP stage, as a capstone project for the MLH Fellowship.


TypeScript logo      Node.js logo      Electron logo      Vue.js logo

Built with TypeScript, Node, Electron and Vue

Installation

To set up Nodemaker:

git clone https://github.com/MLH-Fellowship/nodemaker.git
cd nodemaker && npm run setup

To quickly see it working:

npm run nodegen

With nodegen, Nodemaker will read the built-in sample params and generate sample output files in /output.

Operation

Nodemaker can be operated as a desktop app or as a CLI utility.

  • To run the desktop app: npm run desktop
  • To run the CLI, see the CLI reference.

Nodemaker generates two types of files:

Node functionality files

  • *.node.ts — main logic (regular or trigger node)
  • GenericFunctions.ts — node helper functions
  • *Description.ts — separate logic per resource (optional)
  • *.credentials.ts — node authentication params
  • package.json — updated node listing
  • *.png — node icon
Auto-generated HackerNews.node.ts and GenericFunctions.ts

Node documentation files

  • README.md — main doc file
  • README.md — credentials doc file
  • workflow.png — in-app screenshot for main doc file
Auto-generated README.md and workflow.png

Once these files are generated, Nodemaker can:

  • relocate them in your copies of the n8n and n8n-docs repos, and
  • submit a sample workflow to the n8n.io collection.
Node files auto-placed in n8n repo and workflow auto-submitted on n8n.io

Authors

© 2020 Iván Ovejero and Erin McNulty

License

Distributed under the MIT License. See LICENSE.md.