sat
sat copied to clipboard
Improve JS build toolchain by moving build logic out of templates
We should consider moving build logic out of the module templates and building them into the build toolchain or the runtime itself.
At a high level this should consist of two steps:
- Moving the build process out of the template and integrating it into the JS build toolchain
- Reducing/removing the boilerplate in the templates and co-locating the js sdk with the runtime
Both of these will require a strict contract of SDK versioning where the remaining template/source code will need to define:
- What version of the toolchain/runtime it is compatible with
- What external dependencies should be included (as we would be moving the
package.jsonout of the template as well)
This would both simplify versioning and migrations for when breaking SDK versions are released, as well as allow for "legacy" modules to be built and supported through sat/e2core instances that run earlier sdk versions in deployment environments that do not permit upgrading/migration of old modules.