This project is a monorepo that packages shared config files, Vue components, CSS files, utilities, etc. that can be used for the frontend of all KNIME web projects.
This repository is maintained by UI Core.
A demo of all contained UI components, icons, CSS colors etc. can be found here: https://knime.github.io/webapps-common/
Please see the published packages on npm as well as the packages/
folder to access the relevant files and directories.
The demo application also serves as a development environment (code lives in demo/
folder). You can run it using pnpm:
# Navigate to the demo repository
cd demo
# Install demo dependencies
pnpm install
# Run the demo locally
pnpm dev
When committing your changes, a couple of commit hooks will run via husky.
pre-commit
hook to lint and format the changes in your stage zone (via lintstaged)prepare-commit-msg
hook to format your commit message to conform with the required format by KNIME. In order for this to work you must set environment variables with your Atlassian email and API token. Refer to@knime/eslint-config/scripts/README.md
for more information.
Every PR must include changeset file(s) out of which the CHANGELOG file of each package will get generated. Use the following command to create such files:
pnpm run changeset
Do merge those files with the PR to master.
The release
GitHub Action will automatically create & update a "Version Packages" PR if it detects
changeset file(s) on master. Once a release should be published to npm, simply do merge this PR.