Plasmic
The visual web design tool and frontend builder that works with your codebase.
Building packages
We use lerna
to help us manage dependencies between the @plasmicapp/loader-*
packages, (though we may pull in more packages to be managed by lerna, right now those are the ones with tight dependencies on each other).
Getting started
Make sure you have lerna
installed:
yarn global add lerna
lerna bootstrap # inter-links all the lerna-managed packages together
We also make use of Verdaccio to locally test packages. This just stands up an npm registry that you can publish your test packages to.
yarn global add verdaccio
verdaccio & # Runs the verdaccio server at http://localhost:4873
You'll need to update the verdaccio config file, at ~/.config/verdaccio/config.yaml
, to instruct verdaccio to not use npmjs for our test packages:
packages:
'@plasmicapp/*':
access: $all
publish: $all
unpublish: $all
Workflow
-
Make some changes!
-
If you're ready to test, run
yarn local-canary
. This builds canary versions of your packages to your local registry. -
Install the canary version into wherever you're trying to test, via
yarn add ... --registry=http://localhost:4873
-
Once you're done making your changes, you can run
yarn bump
to bump the versions of the changed packages. If you already have an existing git commit you wawnt to use, doyarn bump --amend
. Submit for code review. -
Once your change has been approved and you're ready to release to npm, run
yarn release
. This will individually publish each package to npm.