--- myst: html_meta: "description": "How to set up the training locally" "property=og:description": "How to set up the training locally" "property=og:title": "Building and Checking the Quality of Documentation" "keywords": "Build, Check, quality, documentation" --- (setup-build-label)= # Building and Checking the Quality of Documentation This document covers how to build the Training documentation and check it for quality. (setup-build-installation-label)= ## Installation Install [Enchant](https://abiword.github.io/enchant/) to check spelling. ```{seealso} [Installation of Enchant from the PyEnchant documentation](https://pyenchant.github.io/pyenchant/install.html). ``` **macOS** ```shell brew install enchant ``` **Ubuntu** ```shell sudo apt-get install enchant ``` Clone the Training repository, then create a Python virtual environment, install project dependencies, activate the virtual environment, and build HTML version of the Training documentation. ```shell git clone https://github.com/plone/training.git cd training make html ``` (setup-build-available-documentation-builds-label)= ## Available documentation builds All build and check documentation commands use the file `Makefile`. To see all available builds: ```shell make help ``` ### `html` `html` is the long narrative version used for the online documentation and by the trainer. ```shell make html ``` Open `/_build/html/index.html` in a web browser. (setup-build-make-presentation-label)= ### `presentation` `presentation` is an abbreviated version of the documentation. It is designed for projectors which are typically low resolution and have limited screen space. Trainers may present this version using a projector during a training. ```shell make presentation ``` Open `/_build/presentation/index.html` in a web browser. Authors should read {ref}`authors-presentation-markup-label` for how to write markup for the presentation build. ### `linkcheck` `linkcheck` checks all links. See {ref}`authors-linkcheck-label` for configuration. ```shell make linkcheck ``` Open `/_build/presentation/output.txt` for a list of broken links. ### `spellcheck` `spellcheck` checks the spelling of words. See {ref}`authors-english-label` for configuration. ```shell make spellcheck ``` Open `/_build/spellcheck/` for each training's misspellings. ### `html_meta` `html_meta` adds a meta data section to each chapter if missing. See {ref}`authors-html-meta-data-label` for more info. ```shell make html_meta ```