A command-line tool for building documentation from repositories into HTML files. Initially based on https://github.com/juju/docs/blob/master/tools/mdbuild.py.
Project description
Archived
This project is legacy and should not be used for new documentation. Existing documentation projects using it should be migrated to the Discourse model, or use another solution. If you manage such a project, please reach out to us to facilitate the upgrade.
Ubuntu documentation builder
Maintenance mode
documentation-builder is now considered a legacy product, as all user maintained documentation sets should now be moving to the discourse-docs model.
Important fixes will still be performed, but we will not be adding new features.
A tool for building a set of documentation files in HTML format, from a remote git repository containing markdown files.
Installation
The best way to install documentation-builder is with snap:
sudo snap install documentation-builder
If you don’t have snap on your system, you can also install it with pip3:
pip3 install ubuntudesign.documentation-builder
For more information see the documentation.
Development
documentation-builder is a Python module. The main application code lives in ubuntudesign/documentation_builder. Updates to the markup or styling should be made in the default template.
Checking changes
To check your changes to documentation-builder, it’s probably easiest to install the module locally, in editable mode, within an encapsulated environment:
python3 -m venv env3 && source env3/bin/activate # Create encapsulated environment
pip install -e . # Install the module in editable mode
documentation-builder --source-folder docs # build the documentation-builder's own documentation
xdg-open build/en/index.html # Open up the documentation page
Watching for changes
On Ubuntu et al. you can use inotifywait to watch for changes to the source files, and rebuild when something changes as follows:
sudo apt install inotify-tools # Ensure inotifywait is installed
# Force rebuild docs when anything changes in the source folder
while inotifywait -r -e close_write "./ubuntudesign"; do bin/documentation-builder --force --source-folder docs; done
Tests
To run tests:
./setup.py test
Debugging
To run a specific test:
./setup.py test --addopts tests/test_operations.py::test_find_files
You can debug tests by adding a debugger to the code and running the test again.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for ubuntudesign.documentation-builder-1.7.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | d517ecf531cf91ac8e0a39f20ccc07747e18136914c5f0df3465ad1f3a386300 |
|
MD5 | b4e9303179b074a40beae80eebcd8035 |
|
BLAKE2b-256 | 7d3a72ebe6876f0e556eba5de8696d651d6828062f6e565954018af751fdfcd1 |