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.1.tar.gz (26.7 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.1-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: doclify-0.2.1.tar.gz
  • Upload date:
  • Size: 26.7 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.1.tar.gz
Algorithm Hash digest
SHA256 4081c6bb174b9910c0eddf454baa45d573c9bd720025d145625ac0896d0778ab
MD5 e2ca6012d3ab6080d6e531fd2e74e0e4
BLAKE2b-256 a38bd455a445764f30c0963a1571adf7197f2e99b340f1407ae23981a766355d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: doclify-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 30.4 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b510bd417e5111928831a531a4808f90240d9b0499f47714dc8772e45f58004d
MD5 36ea3ad4a7f585cc7cde10a00f3c2311
BLAKE2b-256 f7bd613974d3a3cdfa85389d5542ae859b3ef9785c0aa7f55644f0257a0bc71b

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