Skip to main content

Zero-config documentation generator with beautiful UI

Project description

ZeroDoc - Zero-Config Documentation Generator

Generate beautiful documentation from your codebase with zero configuration.

ZeroDoc scans your project, extracts API information, and creates a clean, searchable documentation website - all with a single command.

🚀 Features

  • Multi-Language Support: Python, JavaScript, TypeScript, Go, Rust, Java, C/C++, and more
  • Zero Configuration: Works out of the box with any project
  • AST-based Parsing: Accurately extracts API information using language-specific parsers
  • Markdown Generation: Creates clean, readable markdown documentation
  • Static Site Export: Converts docs to a beautiful HTML site
  • Jinja2 Templates: Customizable README and documentation templates
  • CLI Interface: Simple commands powered by Typer
  • Fast & Lightweight: Generates docs in seconds, not minutes

📦 Installation

# Install from PyPI
pip install zerodoc-gen

# Or use pipx for isolated installation
pipx install zerodoc-gen

# Install from source
git clone https://github.com/yourusername/zerodoc.git
cd zerodoc
pip install -e .

🎯 Quick Start

# Generate documentation for your project
autodoc scan .               # Scan codebase and create API JSON
autodoc readme               # Generate/update README.md
autodoc docs .               # Generate markdown documentation
autodoc export --serve       # Export as static site and serve locally

📚 Commands

autodoc scan

Scans your Python codebase and extracts API information into a JSON file.

autodoc scan [PATH] --out build/api.json --verbose

autodoc readme

Generates or updates README.md using a Jinja2 template.

autodoc readme [PROJECT_PATH] --template default --force

autodoc docs

Generates markdown documentation for all modules.

autodoc docs [PATH] --output docs --verbose

autodoc export

Exports markdown docs as a static HTML site.

autodoc export --source docs --dest site --theme simple --serve

💡 Why ZeroDoc?

  • Cost-Effective: Free and open-source vs $65-79/month for GitBook
  • Developer-First: Built by developers, for developers
  • No Lock-in: Your docs stay in your repo as markdown
  • CI/CD Ready: Integrate with GitHub Actions for automatic doc updates
  • Fast: Generates docs for large codebases in seconds

🛠️ Development

# Clone the repository
git clone https://github.com/yourusername/zerodoc.git
cd zerodoc

# Install in development mode
pip install -e ".[dev]"

# Run on itself to test
autodoc scan .
autodoc docs .
autodoc export --serve

🌍 Supported Languages

ZeroDoc supports documentation generation for:

  • Python: Full AST-based parsing with docstrings, type hints, decorators
  • JavaScript/TypeScript: Classes, functions, async/await, ES6+ features
  • Go: Packages, structs, interfaces, methods, goroutines
  • Rust: Structs, enums, traits, impl blocks, lifetimes
  • Java: Classes, interfaces, generics, annotations
  • C/C++: Classes, structs, functions, templates
  • Ruby, PHP, Swift, Kotlin: Basic support via tree-sitter
  • And more: 40+ languages supported through tree-sitter

🤝 Contributing

We welcome contributions! Here are some good first issues:

  1. Improve language parsers: Enhance extraction for specific languages
  2. Improve themes: Add more CSS themes or Tailwind support
  3. Git integration: Auto-commit docs on successful generation
  4. AI enrichment: Use LLMs to enhance documentation

📊 Statistics

  • Lines of Code: < 1000
  • Dependencies: Minimal (typer, jinja2, markdown-it-py)
  • Performance: Processes 1000+ files in < 5 seconds
  • Memory: < 50MB for large codebases

🗺️ Roadmap

  • Multi-language support (JavaScript, TypeScript, Go, Rust)
  • Plugin system for custom processors
  • Docusaurus/MkDocs export formats
  • API change detection and PR comments
  • Local AI integration for doc enhancement
  • Search functionality in exported sites

📄 License

MIT License - see LICENSE file for details.

🙏 Acknowledgments

  • Built with Typer - The amazing CLI framework
  • Inspired by the need for affordable, quality documentation tools
  • Thanks to all contributors and early adopters

Stop paying for expensive doc platforms. Start using ZeroDoc.

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

zerodoc_gen-1.1.0.tar.gz (36.5 kB view details)

Uploaded Source

Built Distribution

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

zerodoc_gen-1.1.0-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file zerodoc_gen-1.1.0.tar.gz.

File metadata

  • Download URL: zerodoc_gen-1.1.0.tar.gz
  • Upload date:
  • Size: 36.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for zerodoc_gen-1.1.0.tar.gz
Algorithm Hash digest
SHA256 de47ce665885d6b2bfef4725893d8aa7632d2ca15498398cb96ecfab0f856f99
MD5 23e21069d7a4ad94ad7121d0f9108580
BLAKE2b-256 952d1a3fa8f37f79277ac730a2243d4c4c4ad59f2eb1ac1b4b2330e0c140247d

See more details on using hashes here.

File details

Details for the file zerodoc_gen-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: zerodoc_gen-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 33.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for zerodoc_gen-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4ecae35c09c7f04b413601ecfdc7d9bd5a1b762bdc2d79d2d3cd45dfed157ab3
MD5 fc9d42e5d470bf4593fdf459dcf0900a
BLAKE2b-256 ca6f2f9a771ed7bfccf9613fab4157f09e43b835bd27cfbf5f987b2a9671b09d

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