skillfed

docsig

Check signature params for proper documentation

docsig v0.94.0 431.2K downloads/30d#6,720 on PyPI44
Permissive license MIT Active released

What it is and what it does

Docsig is a documentation linter that automatically checks whether function and method parameters in Python code are properly documented in their docstrings. It parses function signatures and compares them against docstring documentation in reStructuredText (Sphinx), NumPy, and Google formats, flagging mismatches such as missing parameter documentation, documented parameters that don't exist in the signature, or undocumented parameters.

It runs as a standalone command-line tool, integrates with flake8 as a plugin, works as a pre-commit hook, and has IDE plugins for PyCharm, VS Code, and Neovim. Configuration is managed via command-line flags, pyproject.toml, or flake8 config files. The tool supports granular control over what to check—classes, dunder methods, nested functions, overridden methods, protected members—and which checks to disable or target.

Use it for:

  • Enforce consistent docstring documentation standards in CI/CD pipelines via pre-commit hooks or flake8 integration.
  • Catch documentation drift during code review by running docsig on pull requests to flag signature-docstring mismatches.
  • Validate that all public API parameters are documented before release, reducing user-facing documentation gaps.
  • Integrate into IDE workflows (PyCharm, VS Code, Neovim) to catch documentation issues in real-time during development.
  • Audit existing codebases to identify undocumented or incorrectly documented function parameters at scale.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Lints Python function and method signatures to ensure their parameters are properly documented in docstrings, supporting reStructuredText, NumPy, and Google styles.

Yes. Docsig fills a real gap in Python documentation tooling—it's actively maintained, has zero known vulnerabilities, installs with low friction, and supports multiple docstring formats and integration points. Use it if you want to enforce documentation accuracy for function signatures as part of your development workflow or CI pipeline.

Install

docsig on PyPI

pip

pip install docsig

uv

uv add docsig

poetry

poetry add docsig

Installing docsig

Before you install

Low friction installation with a pure-Python wheel. Active maintenance—released 6 days ago—and actively maintained dependencies (astroid, pathspec, tomli, wcmatch) with no known vulnerabilities.

License in practice

MIT license permits unrestricted use, modification, and distribution in both open-source and proprietary projects with minimal obligations.

Quickstart

pip install docsig

from docsig import docsig

code = '''
def func(a, b):
    """Summary.
    :param a: Description.
    :param b: Description.
    """
'''
result = docsig(string=code, no_ansi=True)
print(result)  # 0 if valid, error count otherwise

Requires Python 3.10 or later.

Verify before relying

  • Whether flake8 and pre-commit integrations work out-of-the-box or require additional setup beyond installation.
  • Performance characteristics when linting large codebases or deeply nested function structures.
  • Exact behavior of the PyCharm, VS Code, and Neovim plugins and whether they require separate installation.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 4 — astroid, pathspec, tomli, wcmatch
Maintenance actively maintained — 6 days since the last release
Last repo commit
First released
Downloads 431,177/month — #6,720 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: docsig-0.94.0-py3-none-any.whl

Keywords: check, docs, docstring, params, signature

Programming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

docstring parameter lintersignature documentation checkerpython docstring validatorfunction parameter docssphinx docstring lintdocumentation quality checkdocstring compliance
docstring-lintingcode-qualitydocumentation-tools

More Quality Assurance packages