Skip to main content

AI-powered documentation generator for Python projects

Project description

Doclify Logo

Doclify 📚

Intelligent, AI-powered documentation for your software projects.

GitHub Stars PyPI Downloads GitHub License Issues


Doclify is an intelligent command-line tool that automates the process of documenting your AI/ML software projects. By leveraging the power of Advanced LLMs, Doclify scans your codebase, understands the context of each file, and generates a comprehensive, professional README.md file.


🚀 How to Use Doclify

Doclify is designed to be intuitive. Follow these two simple steps to document your project:

1. Initialize Your Project

Run the init command to scan your directory. Doclify will automatically detect your source files and create a doclify.yaml configuration file.

doclify init
  • Supported Files: Python, Markdown, Text Files
  • What happens? Doclify respects your .gitignore and creates a manifest of files to be analyzed.
  • Customization: You can edit doclify.yaml to include or exclude specific files before moving to the next step.

2. Generate Documentation

Once initialized, run the run command to start the AI analysis and generate your README.

doclify run
  • AI Analysis: Doclify sends file contexts to the AI model for summarization.
  • Incremental Progress: You'll see beautiful progress bars and spinners as it works.
  • Backup Security: Doclify automatically saves your existing README.md to README-prev.md so you never lose your manual edits.

Result: A fully documented README.md appears in your project root!


🛠️ Detailed Command Reference

Doclify provides a set of powerful commands to manage your documentation lifecycle.

doclify init

Initializes a new Doclify project in the current directory.

  • Description: Scans the project structure, applies .gitignore filtering, and generates a doclify.yaml file.
  • Example:
    doclify init
    
  • When to use: Run this first to define which files Doclify should consider for documentation.

doclify run

Generates or regenerates the project-wide documentation.

  • Description: Processes all files listed in doclify.yaml using AI models to create a comprehensive README.md.
  • Example:
    doclify run
    
  • When to use: Run this after init or whenever you want to update your entire README based on the latest code changes.

doclify update <path>

Updates documentation for a specific file or directory.

  • Description: Target a specific subset of your codebase for faster, incremental updates.
  • Arguments:
    • <path>: Path to the file or directory you want to re-analyze.
  • Example:
    doclify update src/utils.py
    
  • When to use: Use this when you've modified specific files and want to refresh their summaries in the overall project context without regenerating everything.

✨ Key Features

  • 🚀 Two-Stage Generation: High-level project summary built from granular file-level analysis.
  • 🤖 Powered by AI: Uses the latest AI SDKs for state-of-the-art code understanding.
  • ⚡ Smart Scanning: Built-in .gitignore awareness keeps your documentation clean.
  • 🎨 Polished CLI: Interactive interface using rich with spinners and clear status logs.
  • 🛡️ Safety First: Automatic backups of existing README files.
  • ⚙️ Configurable: Fine-tune the process via doclify.yaml.

⚙️ Configuration

Environment Variables

Doclify requires a Google API Key. Set it in your terminal environment:

Platform Command
Windows (CMD) set GOOGLE_API_KEY=your_api_key_here
Windows (PS) $env:GOOGLE_API_KEY="your_api_key_here"
Linux/macOS export GOOGLE_API_KEY=your_api_key_here

🤝 Contributing & License

Contributions make the open-source community an amazing place! Feel free to fork, branch, and PR.

This project is licensed under the MIT License. See the LICENSE file for details.

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

doclify-0.2.0.tar.gz (26.5 kB view details)

Uploaded Source

Built Distribution

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

doclify-0.2.0-py3-none-any.whl (29.5 kB view details)

Uploaded Python 3

File details

Details for the file doclify-0.2.0.tar.gz.

File metadata

  • Download URL: doclify-0.2.0.tar.gz
  • Upload date:
  • Size: 26.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for doclify-0.2.0.tar.gz
Algorithm Hash digest
SHA256 0f66c1e637aac5b22157d4e680710159771e3ebfe824dafe542ae7c1d0529986
MD5 14212e3172d29880b58ad741addd7d25
BLAKE2b-256 73bb314cb5797be19ae6c5fd49e40aa2d124059e126a45a2a34214e8b0327d79

See more details on using hashes here.

File details

Details for the file doclify-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: doclify-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 29.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for doclify-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f2c6bb0ece6829f3c93d723bfa4ea8edc4171c44f964efc0d809a26346fab1b1
MD5 c18b07c10a057d9748ba59cb0208440e
BLAKE2b-256 d4383d3e959f5ca0faf61f1a08cd8b6abc50d5c6a4ca2f4ef1314f6cacddb58f

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