Contribution Guidelines
These guidelines assume that you’re familiar with the GitHub workflow.
How to Contribute
We use Hugo to format and generate our website, the Docsy theme for styling and site structure, and GitHub Actions for GitHub Pages to manage the deployment of the site. 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.
How to write good documentation
There are four types of documentation: Tutorials, How-To Guides, References, and Explanations. Consult the The Documentation System for:
- How to write good tutorials
- How to write good how-to guides
- How to write good reference guides
- How to write good explanation
Updating the site
Here’s a quick guide to updating the site:
- Fork the docsy-example on GitHub.
- Make your changes and create a pull request (PR).
- If you’re not yet ready for a review, add “WIP” to the PR name to indicate it’s a work in progress.
- Continue updating your doc and pushing your changes until you’re happy with the content.
- When you’re ready for a review, add a comment to the PR, and remove any “WIP” markers.
Updating a single page
If you’ve just spotted something you’d like to change while using the docs, Docsy has a shortcut for you:
- Click Edit this page in the top right hand corner of the page.
- If you don’t already have an up to date fork of the project repo, you are prompted to get one - click Fork this repository and propose changes or Update your Fork to get an up to date version of the project to edit. The appropriate page in your fork is displayed in edit mode.
- Follow the rest of the Updating the site process to propose your changes.
Previewing your changes
If you want to preview your changes as you work, you’ll need to run your own local Hugo server:
Follow the instructions in Getting started to install Hugo and any other tools you need. You’ll need at least Hugo version 0.68.3. If you install from the release page, make sure you download the
_extendedversion which supports SCSS.Fork the docsy-example into your own project, then create a local copy using
git clone. Don’t forget to use--recurse-submodulesor you won’t pull down some of the code you need to generate a working site.git clone --recurse-submodules --depth 1 https://github.com/<your_github_username>/docsy-example.gitRun
hugo serverin the site root directory. By default your site will be available athttp://localhost:1313/docsy-example. Now that you’re serving your site locally, Hugo will watch for changes to the content and automatically refresh your site.hugo serverFollow the rest of the Updating the site process to propose your changes.
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 docsy-example. 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](wherever it goes): 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.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.