- Projects A and B are
apps
(with react-dom) - Projects C and D are
libraries
(no react-dom)
-
project-a
is the main host app -
project-b
is linked to the host app, and has two symlinks inside its node_modules looking at librariesproject-c
andproject-d
-
project-c
is a library that imports libraryproject-d
-
project-d
is listed as a symlink in bothproject-b
andproject-c
, but has no symlinks itself (null). This typically indicates that project-d is just a library
- Changes in
project-d
will be reflected in both libraryproject-c
and appproject-b
in watch/dev mode
run
node linker
Example config
{
"options": {
"removeLockfile": false,
"unlink": true
},
"packages": [
{
"name": "@org/project-a",
"dir": "project-a"
},
{
"name": "@org/project-b",
"dir": "project-b"
},
{
"name": "@org/project-c",
"dir": "project-c"
},
{
"name": "@org/project-d",
"dir": "project-d"
}
],
"dependencies": {
"@org/project-a": ["@org/project-b"],
"@org/project-b": ["@org/project-c", "@org/project-d"],
"@org/project-c": ["@org/project-d"],
"@org/project-d": null
}
}