Skip to content

This repository contains a simple command-line tool called Docly that looks through a project and creates a clear outline of its contents. It helps turn scattered files into an organized view that is easy to understand. Docly is built to save time and make projects feel more readable and approachable.

License

Notifications You must be signed in to change notification settings

KalyanM45/Doclify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Doclify Logo

Intelligent, AI-powered documentation for your software projects.

GitHub Stars PyPI Downloads GitHub License Issues Status Stable


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.

About

This repository contains a simple command-line tool called Docly that looks through a project and creates a clear outline of its contents. It helps turn scattered files into an organized view that is easy to understand. Docly is built to save time and make projects feel more readable and approachable.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages