add sample module

This commit is contained in:
Stewart Allen 2022-01-28 12:17:52 -05:00
commit 44a785ee9d
3 changed files with 39 additions and 0 deletions

17
sample/init.js Normal file
View file

@ -0,0 +1,17 @@
// this is called from the `app.js` function `initModule()` around line `200`
// from there you can get the structure passed in the "server" object
// which includes and `api` and other helper functions
module.exports = function(server) {
server.util.log("--- sample server-side module installed ---");
// insert script after all others in kiri browser code
server.inject("kiri", "kiri.js", {end: true});
server.onload(() => {
server.util.log("--- called after all modules loaded ---");
});
};

6
sample/kiri.js Normal file
View file

@ -0,0 +1,6 @@
console.log('--- in the browser main loop ---');
// the kiri api starts around line `260` of `src/kiri/main.js`
kiri.load(function(api) {
console.log('--- kiri startup complete ---');
});

16
sample/readme.md Normal file
View file

@ -0,0 +1,16 @@
# Application modules
This allows for the loading of server-side modules which can, in turn,
inject browser modules into applications like Kiri:Moto.
To enable the sample module:
* create a `mod` directory at the root of grid-apps
* copy the sample directory into the mod directory: `mod/sample`
* (re)start `gs-app-server`
* you will see log lines at start-up similar to this
```
220128.120432 '[head]' { module: './mod/sample/init.js' }
220128.120432 '[head]' '--- sample server-side module loaded ---'
```