Skip to main content

An AI-powered README.md generator for local projects.

Project description

Docify AI 🚀

Instantly generate beautiful, comprehensive README.md files for your local projects using the power of AI.

Table of Contents

What is Docify?

Every great project needs great documentation, but writing it is often a tedious, manual process. Docify is a command-line tool that automates this entire workflow. It intelligently scans your project's file structure and source code, understands what your project does, and uses a powerful language model to generate a high-quality README.md file in seconds.

Stop writing docs and start shipping code.

Key Features ✨

  • 🤖 AI-Powered Content Generation: Leverages large language models (specifically Google Gemini) to write human-like, technical documentation.
  • 📂 Intelligent Code Analysis: Scans your entire project directory, intelligently ignoring irrelevant files and directories, to understand its purpose, technologies, and structure.
  • ⚙️ Simple Command-Line Interface: Generate a complete README with a single, intuitive command: docify.
  • 🚀 Fast and Efficient: Go from a messy project folder to a polished README in under a minute.
  • 🔧 Customizable: Easily specify the project path to analyze and the desired output file name.

Project Structure 📂

The project is structured to be modular and easy to navigate:

.
├── LICENSE
├── README.md
├── pyproject.toml
└── docify_tool/
    ├── __init__.py
    ├── cli.py
    ├── generator.py
    └── scanner.py
  • LICENSE: Contains the MIT License details for the project.
  • README.md: This very file, providing an overview and instructions.
  • pyproject.toml: Project metadata, dependencies, and build configuration.
  • docify_tool/: The core source code for the Docify CLI.
    • __init__.py: Marks the directory as a Python package.
    • cli.py: Handles command-line argument parsing and orchestrates the scanning and generation process.
    • generator.py: Interfaces with the AI model (Google Gemini) to generate README content.
    • scanner.py: Traverses the project directory, collects file content, and builds the project context.

Technologies Used 🛠️

  • Python: The core programming language for the application (Python 3.8+).
  • LangChain: Framework for developing applications powered by language models.
    • langchain-openai (used for langchain_google_genai integration)
    • langchain-core
  • Google Gemini API: The underlying large language model used for content generation.
  • Setuptools: Used for packaging and distribution of the Python project.
  • Argparse: Python's standard library for parsing command-line arguments.

Installation 📦

Docify is published on PyPI and can be installed on any machine with Python 3.8+ using pip.

pip install docify-ai

Usage 🚀

Using Docify is incredibly simple.

1. Set Your API Key

First, you need to make your Google Gemini API key available as an environment variable. This is a one-time setup per machine. You can get a key from the Google AI Studio for free.

macOS / Linux:

export GEMINI_API_KEY='your-secret-api-key'

(To make this permanent, add the line to your ~/.zshrc or ~/.bashrc file.)

Windows (PowerShell):

$Env:GEMINI_API_KEY="your-secret-api-key"

2. Run Docify

Navigate to any project directory you want to document and run the command:

docify

That's it! The tool will scan the current directory and create a README.md file with the AI-generated content.

Command-Line Options

You can also specify the path to your project and the desired output file using the following options:

  • --path: The root directory of the project to document. Defaults to the current directory (.).
  • --output: The name of the output file. Defaults to README.md.

Example:

docify --path /path/to/my-other-project --output DOCS.md

How It Works 🧠

Docify is built with a clean, modular architecture:

  1. Scanner (scanner.py): Traverses the specified project directory, ignoring unnecessary files (like .git, venv, node_modules, __pycache__), and aggregates all relevant source code into a single context string.
  2. Generator (generator.py): Takes the aggregated project context string and feeds it to the Google Gemini API via LangChain, using a carefully crafted prompt to generate the Markdown content for the README.
  3. CLI (cli.py): Provides the user-friendly command-line interface using argparse, orchestrating the scanner and generator to deliver the final README.md file.

Contributing 🤝

Contributions are welcome! If you have ideas for new features, bug fixes, or improvements, please open an issue or submit a pull request on our GitHub repository (replace with actual link).

License 📄

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

docify_ai-0.1.5.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

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

docify_ai-0.1.5-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file docify_ai-0.1.5.tar.gz.

File metadata

  • Download URL: docify_ai-0.1.5.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for docify_ai-0.1.5.tar.gz
Algorithm Hash digest
SHA256 1c16760e56a331dd3a9cd2d78e8ebe1328cfc13a1f3effb259eb8ed8d7de994f
MD5 ffd97d23e3635859b315d96feba94e62
BLAKE2b-256 bdc13f1a0bf961f40cfb3ed391ed3a3df6fbe326ec52811d32523232af9c8a04

See more details on using hashes here.

File details

Details for the file docify_ai-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: docify_ai-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for docify_ai-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 5dff993bf9d99d87e4a4dd219114d2d92e2b30faa15b52fe0fe8681086aba241
MD5 a24b66fa3ff43ffa45597d1da0c692d5
BLAKE2b-256 838e7e189e00d6d6c631d0ffcc95df961d305b379bc08b5fd5821ad03dc43090

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