pyvault is a Python-powered documentation generator that transforms any Python project into a structured Obsidian vault.
It extracts all classes, functions, and modules, maps their relationships, and builds a fully browseable knowledge graph of the codebase.
- Parses your Python project using Python’s
ast
module - Extracts:
- 📦 Modules (
.py
files) - 🧩 Functions and methods
- 🏷️ Classes (including inheritance, methods, and properties)
- 🔗 Function calls between elements (
uses
)
- 📦 Modules (
- Generates Markdown files for all entities, with proper nesting
- Preserves the original folder structure
- Uses Obsidian-style
[[wiki links]]
to interconnect everything
git clone https://github.com/divengine/pyvault.git
cd pyvault
python divengine/pyvault/core.py /your_project/ /vault_output/
pip install divengine-pyvault
pyvault /your_project/ /vault_output/
To make sure you always get the latest version, use:
pip install --upgrade divengine-pyvault
After running, the tool generates an Obsidian vault like this:
vault_output/
├── module_a.md
├── module_b/
│ ├── imports.md
│ └── MyClass/
│ ├── method_one.md
│ └── method_two.md
Each .md file includes:
- File or object name
- Location in the source project
- Extracted arguments
- Docstrings (if any)
- Relationships (uses, inheritance, etc.)
MIT License © Divengine Software Solutions