Contribution Guidelines
We use Hugo to format and generate our website, the Docsy theme for styling and site structure, and we use Github pages to deploy the site where we store the raw content in our PLANitHugo repository while we generate the website in our submodule which is a different repository (PLANitManual). This way, we ensure content and website are automatically separated.
Hugo is an open-source static site generator that provides us with templates, content organisation in a standard directory structure, and a website generation engine. You write the pages in Markdown (or HTML if you want), and Hugo wraps them up into a website.
All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult GitHub Help for more information on using pull requests.
Quick start with PLANitHugo
Here’s a quick guide to updating the docs. It assumes you’re familiar with the GitHub workflow
- Fork the PLANitHugo repo on GitHub.
- Make your changes and send a pull request (PR).
Previewing your changes locally
If you want to run your own local Hugo server to preview your changes as you work:
- Follow the instructions in the PLANitHugo Readme.md to install Hugo and any other tools you need. You’ll need at least Hugo version 0.45 (we recommend using the most recent available version), and it must be the extended version, which supports SCSS.
- Run
hugo server
in the site root directory. By default your site will be available at http://localhost:1313/. Now that you’re serving your site locally, Hugo will watch for changes to the content and automatically refresh your site. - Continue with the usual GitHub workflow to edit files, commit them, push the changes up to your fork, and create a pull request.
Creating an issue
If you’ve found a problem in the docs, but you’re not sure how to fix it yourself, please create an issue in the PLANitHugo repo. You can also create an issue about a specific page by clicking the Create Issue button in the top right hand corner of the page.
Useful resources
- Docsy user guide: All about Docsy, including how it manages navigation, look and feel, and multi-language support.
- Hugo documentation: Comprehensive reference for Hugo.
- Github Hello World!: A basic introduction to GitHub concepts and workflow.