You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hey; as Pinceau has grown into the theming engine for @nuxt-themes org, I would like it to be a bit more modulable in its usage and project dependencies impact.
The plan for me is to convert the big Vite plugin that Pinceau is right now into a set of smaller plugins splitted that way:
@pinceau/theme
Would offer all the theming and design tokens layer without any bundle size impact except the generated CSS
=> any project that want to uses Pinceau solely for https://nuxt.studio compatibility or theming management purposes to not be bothered with heavier dependencies.
=> improves Pinceau compatibility with other CSS engines or frameworks
@pinceau/static
Would handle all the css() static features and transforms, still allowing to use Pinceau with 0kb of JavaScript code added to your project
@pinceau/runtime
Would handle all runtime features like computedStyles, variants and cssProp and add the Pinceau runtime engine to your project
Rescoping this part will also be a great opportunity to rewrite the engine from all the learnings of previous iterations, I've spotted a lot of things to improve there
@pinceau/nuxt
Would continue handling first-class integration with Nuxt
pinceau
For convenience, this package will still be released and include all the previous ones as dependencies, that way Pinceau always stays 1 dependency away
There would probably be a @pinceau/shared package in between all these "user-facing" ones that would share bits of codes and typings between all these other packages.
Also, this is a very great opportunity to add a test suite for each package, that will improve the stability of Pinceau and the coherence of its feature set by a lot.
Hey; as Pinceau has grown into the theming engine for
@nuxt-themes
org, I would like it to be a bit more modulable in its usage and project dependencies impact.The plan for me is to convert the big Vite plugin that Pinceau is right now into a set of smaller plugins splitted that way:
@pinceau/theme
@pinceau/static
css()
static features and transforms, still allowing to use Pinceau with 0kb of JavaScript code added to your project@pinceau/runtime
computedStyles
,variants
andcssProp
and add the Pinceau runtime engine to your project@pinceau/nuxt
pinceau
There would probably be a
@pinceau/shared
package in between all these "user-facing" ones that would share bits of codes and typings between all these other packages.Also, this is a very great opportunity to add a test suite for each package, that will improve the stability of Pinceau and the coherence of its feature set by a lot.
This indeed is a big piece work, that already has started in the https://github.com/Tahul/pinceau/tree/feat/rewrite-engine branch :)
The text was updated successfully, but these errors were encountered: