Skip to main content

Extract documentation from Python projects into Markdown without rewriting it

Project description

Markdownizer

Extract existing documentation from Python projects into Markdown.

Markdownizer never generates, rewrites, summarizes, or improves documentation. It only extracts what is already present in your source code: docstrings, comments, decorators, and source.

Installation

pip install -e .

Usage

markdownizer /path/to/project -o ./docs

This recursively scans the project, parses every Python file with the AST, and writes one Markdown file per package into ./docs.

What is extracted

For every documented object (modules, packages, classes, dataclasses, enums, functions, async functions, methods, properties, Django models, Django forms, Django admin classes, DRF serializers, DRF viewsets, signals, middleware, management commands, URL configuration, and any other object with a docstring):

  • The docstring, verbatim
  • Comments that belong to the object (preceding and inline)
  • Decorators
  • The complete source code

Output format

Each generated Markdown file groups all modules inside a single package and uses specialized headers such as:

# Django Model: User
# DRF Serializer: UserSerializer
# DRF ViewSet: UserViewSet
# Enum: Status
# Dataclass: Point
# Async Function: fetch_data

Every section preserves the original formatting of the source documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

markdownizer-0.1.0.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

markdownizer-0.1.0-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file markdownizer-0.1.0.tar.gz.

File metadata

  • Download URL: markdownizer-0.1.0.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for markdownizer-0.1.0.tar.gz
Algorithm Hash digest
SHA256 796a6a346f42ecbd4a8b20f658e8cfbad234fcb94ef9c6dbaab893b7e8f4258a
MD5 55e58f00d1c26acb90e0c6031c99b184
BLAKE2b-256 6d37e89836434670855ac48fcc151cf8c2cbdbd4119be7ed098adc5886b95fef

See more details on using hashes here.

File details

Details for the file markdownizer-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: markdownizer-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for markdownizer-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a5573464bd6948a4f34babbbf1028ca938e0a6c1c027e767e5635fa8a8d024f5
MD5 1caf06fd688398d48dedac730f19363f
BLAKE2b-256 40ce765e8dbe4788c5abce4ef5fe3b6f7f1aea58b988ef8ccaeb0a71c1b4548d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page