# Best practice for installation of node-red and custom node

**URL:** <https://discourse.nodered.org/t/best-practice-for-installation-of-node-red-and-custom-node/22850>\
**Category:** General\
**Created:** [9 March 2020 11:31 UTC](https://discourse.nodered.org/t/best-practice-for-installation-of-node-red-and-custom-node/22850 "2020-03-09T11:31:49Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![kuema](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/kuema/32/6542_2.png) [@kuema](https://discourse.nodered.org/u/kuema)\
**Post date:** [9 March 2020 11:55 UTC](https://discourse.nodered.org/t/best-practice-for-installation-of-node-red-and-custom-node/22850/2 "2020-03-09T11:55:48Z")

</div>

I prefer having everything as local as possible.

See this post: [Multiple node red instances](https://discourse.nodered.org/t/multiple-node-red-instances/18002/2)

That has the advantage of running multiple instances with different node sets and possibly different versions of Node-RED.

As for your second question:  
Install all custom nodes in your workspace (where the flows.json is stored, `.node-red` by default) and setup this workspace as NodeJS project with a package.json (`npm init`). That way you can keep track of your dependencies.

I'd also recommend versioning each workspace as Git repo.

---

_[View the full topic](https://discourse.nodered.org/t/best-practice-for-installation-of-node-red-and-custom-node/22850)._
