I'm developing a set of tools based on docu-lite with the idea that they can be run standalone or in combination from the command line or by importing to Python modules. Currently I've got the document parser part of docu-lite, slightly improved, as a cli/importable module. The tools are available from pip and on GitHub: docu-lite-kit
- 📖 Browse classes and functions with collapsible docstrings in a tidy, readable format
- 📘 Specify your own stylesheet(s) or rely on the default (will be generated on run)
- 🎈 No dependencies, short script
- ⚙️ Integrate into your GitHub Workflow to have automatically up-to-date outline(s) in your repo
- 🛠️ Includes a text list of classes and functions useful for creating a delta view of API changes (e.g. using GitHub's compare)
- 👀 Example live output:
- 👀 Example live output (documentation mode):
User-facing | Browsable outline | Text file (e.g. for API delta) |
---|---|---|
Install using pip: open a command window and type
pip install docu-lite
Either edit and run docu-lite.py in an IDE, or run from the command line:
docu-lite # uses or creates docu-lite.ini
docu-lite --config alt.ini # uses alt.ini, errors if missing
Docu-lite will create a docu-lite.ini file if one doesn't exist.
⚙️ Edit the docu-lite.ini file to control how docu-lite runs:
- pattern specifies where to look for input
- html specifies the name of the output html file
- css specifies the name of the input style sheet, which will be referenced from the output html file
- text_file specifies the name of the text results file (text_file =) prevents text file creation
- documentation_mode produces a less detailed output styled for use as or editing into documentation.
- ignores code blocks starting with _ (e.g. def _name)
- hides 'self' in function argument lists
- provides inner content only for docstrings, not code
- style sheet dedicated to this mode can be specified in the ini file
- ignore_docstrings_with can be followed by = word to ignore docstrings containing the word (e.g. License, useful to stop license blocks appearing in the output)
📝 If the specified css file is not found, docu-lite will generate one and reference it in the html
- Doesn't cleanly handle all variations of docstring layout. In particular, the single line docstring causes the body below the docstring to appear below it.
- Doesn't cleanly handle function definitions that span several lines (only first line is shown)