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?
- Key Features ✨
- Project Structure 📂
- Technologies Used 🛠️
- Installation 📦
- Usage 🚀
- How It Works 🧠
- Contributing 🤝
- License 📄
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 forlangchain_google_genaiintegration)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 toREADME.md.
Example:
docify --path /path/to/my-other-project --output DOCS.md
How It Works 🧠
Docify is built with a clean, modular architecture:
- 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. - 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. - CLI (
cli.py): Provides the user-friendly command-line interface usingargparse, orchestrating the scanner and generator to deliver the finalREADME.mdfile.
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c16760e56a331dd3a9cd2d78e8ebe1328cfc13a1f3effb259eb8ed8d7de994f
|
|
| MD5 |
ffd97d23e3635859b315d96feba94e62
|
|
| BLAKE2b-256 |
bdc13f1a0bf961f40cfb3ed391ed3a3df6fbe326ec52811d32523232af9c8a04
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5dff993bf9d99d87e4a4dd219114d2d92e2b30faa15b52fe0fe8681086aba241
|
|
| MD5 |
a24b66fa3ff43ffa45597d1da0c692d5
|
|
| BLAKE2b-256 |
838e7e189e00d6d6c631d0ffcc95df961d305b379bc08b5fd5821ad03dc43090
|