This PR makes the Sites app the default server for storing/serving UI artifacts, instead of requiring the same storeSys boilerplate to be used within every app.
Accordingly, both the package infra and psibase CLI tool were updated to call storeSys on sites.
Furthermore, I needed to add a Sites plugin to accommodate the Branding app, which was previously calling its own storeSys action manually.
I removed the storageInterface, WebContentRow, and serveContent as interfaces, since they are no longer needed.
Docs changes
I also updated StorageInterface docs, CLI docs, and package support docs.
Benefits
Simpler to write services: 99% of cases it is unnecessary to add the store/serveContent boilerplate to a service.
RPC services can now be used exclusively for servicing queries, which makes them read-only and easier to reason about
Makes upgrades to UI storage/service easier as it is now centralized. For example it should now be fairly trivial to add gzip compression on all artifacts that use the Sites app.
Description
This PR makes the Sites app the default server for storing/serving UI artifacts, instead of requiring the same
storeSys
boilerplate to be used within every app.Accordingly, both the package infra and psibase CLI tool were updated to call
storeSys
onsites
.Furthermore, I needed to add a Sites plugin to accommodate the Branding app, which was previously calling its own
storeSys
action manually.I removed the
storageInterface
,WebContentRow
, andserveContent
as interfaces, since they are no longer needed.Docs changes
I also updated StorageInterface docs, CLI docs, and package support docs.
Benefits