Skip to content

v0.1.0

Choose a tag to compare

@ProudRykar ProudRykar released this 10 Oct 23:20

Release 0.1.0 – Initial Release

Release Date: 2025-10-11

Overview

This release introduces the initial version of the Gutarik documentation generator. It provides robust configuration handling, automatic Markdown documentation generation from Python source files, and seamless integration with GitHub Wiki repositories.

Features

  • Configuration Validation

    • Validate paths, project directories, documentation directories, supported extensions, and GitHub Wiki repository URLs.
    • Support for .yml, .yaml, .toml, and Python (.py) configuration files.
    • Automatic checks for mandatory configuration keys.
  • Markdown Documentation Generation

    • Extracts Google-style docstrings from Python modules, classes, and functions.
    • Parses arguments, return values, and exceptions into structured Markdown tables.
    • Supports async functions and HTTP route annotations.
    • Generates documentation for multiple project directories, respecting excluded directories.
  • Wiki Integration

    • Automatically renames Markdown files based on source file headers.
    • Pushes generated documentation to a local GitHub Wiki clone.
    • Supports incremental updates and commit detection to avoid redundant pushes.
  • Utility Functions

    • Safe path validation to prevent unsafe or invalid file paths.
    • Flexible configuration loader with automatic detection of gutarik.* or [tool.gutarik] in pyproject.toml.

Installation

poetry add gutarik

Usage

  1. Prepare a configuration file (gutarik.yml, gutarik.toml, or gutarik.py) or use pyproject.toml.
  2. Run the documentation generator:
poetry run gutarik
  1. Optionally, push documentation to GitHub Wiki:
poetry run gutarik --push

Notes

  • The project enforces safe file paths and validates all configuration values before generating documentation.
  • Initial version focuses on Python projects with Google-style docstrings. Other languages or docstring styles are not yet supported.
  • Wiki push functionality assumes valid GitHub Wiki repository access.