Currently all our Angular components exist under libs/designsystem and are published to npm as @kirbydesign/designsystem.
Now that we are porting these to web components, and need to create angular proxies for backward compatability, there are some benefits to creating a new package instead of reusing the existing:
We can develop webcomps + proxies and maintain existing components in parallel
When auto-generating proxies, we have somewhere to place the generated files and mirror the existing project structure without collisions between files, types etc.
We can continously merge web components and their corrosponding proxies without affecting releases of the designsystem
when ready it is possible to 'flip the switch' and re-export the proxies from @kirbydesign/designsystem, so we use the new comps in production. This can be done in meaningful chunks aligned with the roadmap, instead of comp by comp.
When a meaningful set of components have been converted, we can release them together as a bundle
Scope - @kirbydesign/angular is more descriptive of what is going on, now that we are going to support multiple frameworks
we should add a subfolder-structure like /src/components or /components/? The designsystem folder structure is currently very flat, which creates a lot of noise with dist, node_modules etc. in the mix
It is important to preserve file structure of the packaged code, so the two packages can be used interchangeably
Scope
Add nx project and first secondary entry for badge
Currently all our Angular components exist under libs/designsystem and are published to npm as
@kirbydesign/designsystem
. Now that we are porting these to web components, and need to create angular proxies for backward compatability, there are some benefits to creating a new package instead of reusing the existing:Tech refinement
@kirbydesign/extensions-angular
was recently created with a very similar structure, and can be used as a reference: https://github.com/kirbydesign/designsystem/tree/develop/libs/extensions/angular/src/components
or/components/
? The designsystem folder structure is currently very flat, which creates a lot of noise with dist, node_modules etc. in the mixScope