components used for the fusion apps developed by the bergen team(s)
Structure of the code
- export everything in src/index.ts file.
- use appropriate folders for different shared code (hooks, components, models, utils. etc)
Shared code principles
- Create minimal necessary interfaces so they can be used as generally as possible.
- When extracting existing code from apps and putting it here one might need to use other stuff in the app. This will thus also need to be moved here. Try to limit this somewhat, but more importantly: make sure that there is not duplicated code here and in the app.
versioning guide
select the appropriate one when running the interactive versioning tool np (described below)
- patch: small fix or change.
- minor: new components or larger change
- major: big updates
Using np to publish new versions
Requirements
Install np globally
$ npm install --global np
Be added as a maintainer of the package in the npm registry. For this you need a user on the npm site Ask a team member already added to add your user also.
Use cli with rm installed, if not the build command will fail.
Alternatively you can use webpack directly npx webpack
after deleting the dist folder if you have done builds before.
then do npx tsc --emitDeclarationOnly true
.
How to
-
ensure that you are not behind on the git origin branch
-
ensure that you are logged in:
npm login
-
build the package using
npm run build
-
run the command
np --yolo
to start interactive publishing or runnpm run release