# JavaScript Documentation Generation ## Prerequisites * Install node.js. * Install jsdoc via npm. `npm install jsdoc -g` If you would like the extra functionality for gravPrep: * Run `npm install` To generate HTML documentation for the Overte JavaScript API: * `cd tools/jsdoc` * `jsdoc root.js -r api-mainpage.md -c config.json` The **out** folder should contain index.html. If you get a "JavaScript heap out of memory" error when running the `jsdoc` command you need to increase the amount of memory available to it. For example, to increase the memory available to 2GB on Windows: * `where jsdoc` to find the `jsdoc.cmd` file. * Edit the `jsdoc.cmd` file to add `--max-old-space-size=2048` after the `node` and/or `node.exe` commands. Reference: https://medium.com/@vuongtran/how-to-solve-process-out-of-memory-in-node-js-5f0de8f8464c To generate the grav automation files, run node gravPrep.js after you have made a JSdoc output folder. This will create files that are needed for hifi-grav and hifi-grav-content repos The md files for hifi-grav-content are located in out/grav/06.api-reference. The template twig html files for hifi-grav are located out/grav/templates. if you would like to copy these to a local version of the docs on your system you can run with the follows args: * node grav true "path/to/grav/" "path/to/grav/content"