Frieda is a component build framework for monorepos where each component decides their own build steps.
Being build on top of Lerna, it provides a lot of possibilities going from dependency linking to automatic versioning based on commit messages. It is also reponsible for publishing these packages to the package feed of your choise.
At the moment we provide build steps for the following types:
- SCSS
- Angular
For future improvements see the roadmap.
Managing a monorepo is challenging, but is even more challenging if this repo has more then one technology to use. By moving the responsibility of the build to the component itself, we can for example migrate an existing Angular component to Webcomponents.
What is needed to get Frieda rolling?
npm start
To start the demo, run the following:
npm run start:demo
ng generate library [COMPONENT NAME]
Do not just copy another component, since the ng generate
command also changes things inside tsconfig.json
Create a new folder in the packages
folder with the following structure:
[COMPONENT NAME]
src/
[COMPONENT NAME].scss
- Monorepo
- Lerna
- SCSS
- Angular
- Watch build
- Angular:build + copy to dist
- Clean dist
- Commitizen
- Changelogs + releases
- Stencil
- Build logging + errors?