NPM packages
NPM packages
The combining of modules into applications will be managed by the use of NPM, the node package manager.
Each module will be published as an NPM package to GIDE's internal NPM registry. Modules will each have their own git repository but users of the software will generally not use those repositories.
NPM's versioning mechanisms (and Semantic Versioning) will be used for the individual modules, to track the version dependencies. A formal release management process will be followed, including changelogs.
Whilst NPM was developed as the package manager for Node, it is also capable of packaging software in other languages, including Perl and C programs. This will allow existing tools from XCAWI2 to be ported to the new CAWI system and packaged as NPM modules.
For instructions on using GIDE's NPM packages, see here:
https://gitlab.gide.net/gide/npm-registry/-/blob/main/README.md