The goal of this topic is to discuss, document and share any useful information about tools, techniques, tips and consideration for documenting software solutions. Documentation has always been one of the hardest parts of developing a solution, and I hope this guide will get you started down the righteous path. In the end, you should have a project that is ready for public release.
Feel free to ask questions, post comments or any references that will help shed some light on software documentation and user documentation.
Tools
Docusaurus
Docusaurus is a static-site generator . It builds a single-page application with a fast client-side navigation, leveraging the full power of React to make your site interactive. It provides out-of-the-box documentation features , but can be used to create any kind of site (personal website, product, blog, marketing landing pages, etc).
Sphnix
Sphinx is a tool that makes it easy to create intelligent and beautiful documentation, written by Georg Brandl and licensed under the BSD license.
It was originally created for the Python documentation, and it has excellent facilities for the documentation of software projects in a range of languages. Of course, this site is also created from reStructuredText sources using Sphinx! The following features should be highlighted.
- Output formats: HTML (including Windows HTML Help), LaTeX (for printable PDF versions), ePub, Texinfo, manual pages, plain text
- Extensive cross-references: semantic markup and automatic links for functions, classes, citations, glossary terms and similar pieces of information
- Hierarchical structure: easy definition of a document tree, with automatic links to siblings, parents and children
- Automatic indices: general index as well as a language-specific module indices
- Code handling: automatic highlighting using the Pygments highlighter
- Extensions: automatic testing of code snippets, inclusion of docstrings from Python modules (API docs), and more
- Contributed extensions: dozens of extensions contributed by users; most of them installable from PyPI
- Markdown and RST support
- Template engine
- Auto-document Python source code.
- Documentation tool for Python
- Supports Readthedocs
- Free and can be hosted on Github pages
https://www.sphinx-doc.org/en/master/
Gitbook - Features
GitBook helps you publish beautiful docs for your users and centralize your teams’ knowledge for advanced collaboration.
References
- How to build the best user documentation
- Best Online Software Documentation Tools