Pupil docs static site generator.
hugo- static site generator written inGo- macOS:
brew install hugo - Linux:
sudo apt install hugoorsnap install hugo - Windows: see hugo installation guide here
- macOS:
Pygmentspip install pygmentsorpip3 install pygments
Nodeandnpm
Clone the repo and submodules:
git clone --recursive https://github.com/pupil-labs/pupil-docs-website.git
cd pupil-docs-website
npm installBuild and serve using gulp tasks. This will call hugo server as a child process after building all js and css.
gulpBy default this will serve on localhost:1313
This project depends on 3 submodules:
- content - contains all text and images used in documentation. It is versioned independently from the site generator and all styles. Versions of content are synchronized with versions of Pupil.
- docuapi - a Hugo theme for slate with some nice custom tools. We forked the repo in order to make change to layouts and styles.
- slate - a fork of Slate with only
js, styles, and fonts stored for development. Javascript is minified and bundled withdocuapi's custom GO bundler or withgulptask.
- slate - a fork of Slate with only
Diagram of the submodule hierarchy.
/pupil-docs-website
|-- content
|-- themes
| `-- docuapi
| `--static
| `--slate
Deployment with TravisCI. See .travis.yml and /scripts directory.
HTMLProofer - test rendered html files for errors
Have a look in Pupil Docs Wesite TravisCI logs for errors
- Images -
imgelements - Links -
a,linkelements - Scripts -
scriptelements - HTML - Whether the HTML markup is valid. This is done via Nokogiri to ensure well-formed markup.
bundle install
Setup $GOPATH on Arch Linux
SSL with letsencrypt - 3rd party tool