An intelligent command-line interface (CLI) that leverages AI to automate documentation, testing, and project scaffolding for local software projects.
- AI-Powered Documentation Generation: Automatically create detailed and domain-specific
README.mdfiles for any project. - Automated Test Suite Generation: Generate runnable
pytesttest files covering various scenarios. - Dockerfile Generation: Create optimized
Dockerfiles for containerizing your applications. - GitHub Actions Workflow Generation: Develop
YAMLconfigurations for CI/CD pipelines. - Project Scaffolding: Bootstrap new Python projects with a predefined structure.
- Docstring Generation: Automatically add PEP 257–compliant docstrings to Python functions, classes, and modules.
- Jupyter Notebook Generation: Kickstart data analysis with a starter notebook including data loading, EDA, and model training pipelines.
- Model Card Generation: Create
MODEL_CARD.mdfor ML/AI projects, detailing model information, intended use, and ethical considerations. - Flexible AI Clients: Support for both Google Gemini and OpenAI GPT models.
Docify-AI is available on PyPI and can be installed using pip:
pip install docify-aiThe docify command is the entry point to all functionalities.
Before using the tool, you must set your GEMINI_API_KEY or OPENAI_API_KEY as an environment variable. Alternatively, you can provide it directly via the --key argument.
# Example for Linux/macOS
export GEMINI_API_KEY='YOUR_GEMINI_API_KEY'
# Example for OpenAI
export OPENAI_API_KEY='YOUR_OPENAI_API_KEY'These options can be used with any action:
--path,-p: Root directory of the project (default: current directory).--output,-o: Custom output file/folder name.--client,-c: AI client to use (openaiorgemini, default:gemini).--key,-k: Provide the API key directly, overriding environment variables.--ignore-dirs: Space-separated list of directories to ignore.--ignore-exts: Space-separated list of file extensions to ignore.
Generate README.md (Default Action)
Analyzes your project and creates a professional README file.
docify --path /path/to/your/projectGenerate Pytest Tests
Creates a tests/ directory with pytest-compatible test modules.
docify --test --path /path/to/your/projectGenerate a Dockerfile
Creates a Dockerfile tailored to your project's needs.
docify --docker --path /path/to/your/projectGenerate a GitHub Actions Workflow
Creates a .github/workflows/ci.yml file for continuous integration.
docify --gha --path /path/to/your/projectBootstrap a New Python Project Generates a basic Python project structure from a description.
docify --init "A simple Flask API for managing tasks"Add Docstrings to a Python File Inserts Google-style docstrings into a specified Python file in-place.
docify --docstring /path/to/your/project/my_module.pyGenerate a Jupyter Notebook Creates a starter Jupyter Notebook for data analysis or ML projects.
docify --notebook --path /path/to/your/data_projectGenerate a Model Card
Creates a MODEL_CARD.md for your AI/ML projects.
docify --model-card --path /path/to/your/ml_project