cjss-group / CJSS

A CSS based web framework
https://cjss.js.org/
MIT License
670 stars 20 forks source link

Custom plugins #50

Open c-harding opened 5 years ago

c-harding commented 5 years ago

I'm not sure what to do with other plugins: should we put them in this repo (how should we allow them to be loaded?), or create a new repo/package for each one?

There is also the interesting problem of when to render the elements (see #51), as the current system means that these transformations don't work until first the plugins and then the page are loaded.

Ryuno-Ki commented 5 years ago

should we put them in this repo

You mean, a monorepo managed with lerna?

Hm, I found lerna not quite intuitive to use, but if they're somewhat deeply coupled (meaning, an update of one part would cause a need for updates in other plugins), then it might be worth it.

What about listing community plugins? How do they declare compatibility? Via peerDependency?

c-harding commented 5 years ago

I've never used Lerna, I was just wondering whether to put plugins for additional languages (#14) as files within this package, with some sort of dynamic loading, or as separate repos. The plugins certainly won't be coupled with each other, but I'm just concerned that, as each plugin is a small file at best, having each one as a repo is a bit overkill

scottkellum commented 5 years ago

I was thinking a few core first party plugins in the repo as options to help people get up and running, but allow people to add other plugins on as separate repos.