Open tmpfs opened 4 years ago
Initial simple implementations could be:
The short code functionality should be migrated to partial plugins.
The search runtime and book assets could be migrated to plugins.
As of 62f2fc4a68211c3e2f82b9464796003b189392ff the search runtime files are now a plugin and short codes have been migrated to simple partial plugins, see the plugins repo.
As of bb90119f66cb1e1eaadd16831476cfe58672e265 the builtin templates have been migrated to the std::core
plugin and the feed templates to std::feed
.
Optional features support integrated in 1898fa3448a7e250271d654a2e83b45e91c28e9e.
Consider using non-namespaced dependencies as private modules. So, for example in the case of a font pack we might want a variant but in order to mesh with the feature flags it needs to be a plugin. However publishing another plugin for a private module would be too much maintenance.
If we have the plugin font::inter
then it could declare a private local dependency without the namespace of perhaps with a trailing delimiter or keyword either self::regular
or just ::regular
could resolve to a relative folder regular
containing the plugin.
Draft scoped plugin support was completed in 1db1caa0c90f2b0cd3894d0eb695c3307c151f4a which allows us to use feature flags to embed specific scoped plugins, used the font::inter
package intergrated with the main project website.
The plugin design should allow for:
rev()
?) - test bumping and removing lock file!/assets/plugins/{plugin-name}
)std::book
can supply standard print template)assets
)Later we can look at a component system built on top of the plugin system.