This installs a local copy of the Hugo binary that we need to build
the site. Otherwise the user would have to install it via their sy-
stem package manager. This also adds a new npm "build:site" script
to build the site using our local version of Hugo.
Note: this is slightly annoying, but after toying with "easier" op-
tions like Hexo that integrate with the JavaScript ecosystem more
naturally, I ended up preferring Hugo anyways. Hexo's not nearly as
powerful or well documented as Hugo.
Note note: there is also the `hugo-bin` package on NPM, but it is
very out of date.
This script doesn't generate the docs itself. It actually only does
the schema parsing to generate the metadata term content and vocabs.
The docs site is generated by Hugo after running this.
It seems we can only enable GitHub Pages with subdirectories at the
root of the project. Ours is in ./site/docs so I think we need to
use an example like Hexo's to publish with a GitHub workflow.
See: https://hexo.io/docs/github-pages
After running the util/generate_docs.py script to parse and extract
the metadata term specifications and their controlled vocabularies,
we use Hugo to generate the HTML site. The HTML site uses Bootstrap
with several ISEAL brand colors gleaned from the corporate website.
This script parses the Excel schema file to produce term metadata
and extract controlled vocabularies to the site content directory.
After running this we can generate the site using Hugo.
Currently covers the dependencies used in Marie's Jupyter notebook
and some extra dev tooling. Note that I had an issue using poetry
to install pylode, so I added it to pyproject.toml manually.