# AutoDocify CLI
## Overview
AutoDocify CLI is a command-line tool designed to automate the generation of various project documentation, including READMEs, technical documentation, Swagger specifications, and test files. Leveraging AI, it streamlines your documentation workflow, saving you valuable time and effort. It currently supports Gemini, OpenAI, and Bard as language models (LLMs).
[//]: # (This is a comment used for Table of Contents generation)
[TOC]
## Installation Instructions
**Prerequisites:**
* Python 3.8 or higher
* `pip` (Python package installer)
**Installation:**
1. Clone the repository:
```bash
git clone <REPOSITORY_URL>
cd <PROJECT_NAME>
```
2. Install dependencies:
```bash
pip install -r requirements.txt
```
3. **Configuration (Optional):** Set your AI API keys and backend URLs in the `.env` file. An example `.env` file (`.env.example`) is provided. You need to replace the placeholder values with your actual keys.
## Usage Guide
The AutoDocify CLI offers several commands to generate different types of documentation. All commands accept a `base_dir` argument to specify the project directory. If not provided, it defaults to the current working directory. The `llm` argument allows you to specify the LLM to use ("gemini", "openai", or "bard").
**Basic Usage:**
```bash
autodocify <command> [options]
```
**Available Commands:**
* `greet`: A simple greeting command.
* `generate-readme`: Generates a README.md file.
* `generate-tests`: Generates test files (currently supports Python's `pytest`).
* `generate-docs`: Generates technical documentation.
* `generate-swagger`: Generates Swagger documentation (JSON or YAML).
**Examples:**
* Generate a README using Gemini:
```bash
autodocify generate-readme --llm gemini --output-file README_gemini.md
```
* Generate tests using Bard in a specific directory:
```bash
autodocify generate-tests --base-dir /path/to/my/project --llm bard
```
* Generate Swagger documentation as YAML:
```bash
autodocify generate-swagger --format yaml --output-file swagger.yaml
```
## Configuration
AutoDocify uses a `.env` file for configuration. You can customize settings like the backend URL and AI API keys. Refer to the `.env.example` file for the structure and available options. Remember to rename `.env.example` to `.env` after setting your configurations.
## Technical Details
* **Programming Language:** Python
* **Framework:** Typer (for CLI), Rich (for console output)
* **Libraries:** `requests`, `pydantic-settings`, `google.generativeai` (for Gemini), OpenAI Python library (for OpenAI), potentially others depending on LLM support.
* **Architecture:** The CLI interacts with an AI backend service (currently a placeholder, but the structure supports different LLMs) to generate the documentation.
## Contribution Guidelines
1. Fork the repository.
2. Create a new branch for your feature or bug fix.
3. Make your changes and ensure they are well-documented and tested.
4. Commit your changes with clear commit messages.
5. Submit a pull request. Please follow our coding standards and ensure your code passes all tests.
## License
This project is licensed under the <LICENSE_NAME> License - see the [LICENSE](LICENSE) file for details.
## FAQs
* **Q: What AI models are supported?**
* A: Currently, Gemini, OpenAI, and Bard are supported. Support for more LLMs may be added in future releases.
* **Q: How can I customize the generated documentation?**
* A: You can customize the output by modifying the prompts templates found in the `prompt_templates` directory, adjusting settings in the `.env` file, or adding arguments to the CLI commands.
* **Q: What if the AI generation fails?**
* A: The CLI includes robust error handling. It will display informative error messages, which often provide hints to help debug the problem. Contact support if you're unable to resolve the issue.
## Support
For support or bug reports, please open an issue on the [GitHub repository](<REPOSITORY_URL>). For urgent issues, contact <YOUR_EMAIL>
Raw data
{
"_id": null,
"home_page": "https://github.com/grayStone-Inc/autodocify-cli",
"name": "autodocify-cli",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.12",
"maintainer_email": null,
"keywords": "autodoc, documentation, automation, readme, tests, python, cli, llm, ai, developer, productivity, pytest, unittest, devtools",
"author": "AlexAdedeji",
"author_email": "alexadedeji15@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/0c/99/c11921a720ac5ebd422b95ec0f903867ef215c26e0d635d5d5b6edbc8807/autodocify_cli-0.5.0.tar.gz",
"platform": null,
"description": "# AutoDocify CLI\n\n## Overview\n\nAutoDocify CLI is a command-line tool designed to automate the generation of various project documentation, including READMEs, technical documentation, Swagger specifications, and test files. Leveraging AI, it streamlines your documentation workflow, saving you valuable time and effort. It currently supports Gemini, OpenAI, and Bard as language models (LLMs).\n\n[//]: # (This is a comment used for Table of Contents generation)\n[TOC]\n\n\n## Installation Instructions\n\n**Prerequisites:**\n\n* Python 3.8 or higher\n* `pip` (Python package installer)\n\n**Installation:**\n\n1. Clone the repository:\n ```bash\n git clone <REPOSITORY_URL>\n cd <PROJECT_NAME>\n ```\n\n2. Install dependencies:\n ```bash\n pip install -r requirements.txt\n ```\n\n3. **Configuration (Optional):** Set your AI API keys and backend URLs in the `.env` file. An example `.env` file (`.env.example`) is provided. You need to replace the placeholder values with your actual keys.\n\n\n## Usage Guide\n\nThe AutoDocify CLI offers several commands to generate different types of documentation. All commands accept a `base_dir` argument to specify the project directory. If not provided, it defaults to the current working directory. The `llm` argument allows you to specify the LLM to use (\"gemini\", \"openai\", or \"bard\").\n\n**Basic Usage:**\n\n```bash\nautodocify <command> [options]\n```\n\n**Available Commands:**\n\n* `greet`: A simple greeting command.\n* `generate-readme`: Generates a README.md file.\n* `generate-tests`: Generates test files (currently supports Python's `pytest`).\n* `generate-docs`: Generates technical documentation.\n* `generate-swagger`: Generates Swagger documentation (JSON or YAML).\n\n**Examples:**\n\n* Generate a README using Gemini:\n ```bash\n autodocify generate-readme --llm gemini --output-file README_gemini.md\n ```\n\n* Generate tests using Bard in a specific directory:\n ```bash\n autodocify generate-tests --base-dir /path/to/my/project --llm bard\n ```\n\n* Generate Swagger documentation as YAML:\n ```bash\n autodocify generate-swagger --format yaml --output-file swagger.yaml\n ```\n\n## Configuration\n\nAutoDocify uses a `.env` file for configuration. You can customize settings like the backend URL and AI API keys. Refer to the `.env.example` file for the structure and available options. Remember to rename `.env.example` to `.env` after setting your configurations.\n\n## Technical Details\n\n* **Programming Language:** Python\n* **Framework:** Typer (for CLI), Rich (for console output)\n* **Libraries:** `requests`, `pydantic-settings`, `google.generativeai` (for Gemini), OpenAI Python library (for OpenAI), potentially others depending on LLM support.\n* **Architecture:** The CLI interacts with an AI backend service (currently a placeholder, but the structure supports different LLMs) to generate the documentation.\n\n\n## Contribution Guidelines\n\n1. Fork the repository.\n2. Create a new branch for your feature or bug fix.\n3. Make your changes and ensure they are well-documented and tested.\n4. Commit your changes with clear commit messages.\n5. Submit a pull request. Please follow our coding standards and ensure your code passes all tests.\n\n\n## License\n\nThis project is licensed under the <LICENSE_NAME> License - see the [LICENSE](LICENSE) file for details.\n\n\n## FAQs\n\n* **Q: What AI models are supported?**\n * A: Currently, Gemini, OpenAI, and Bard are supported. Support for more LLMs may be added in future releases.\n\n* **Q: How can I customize the generated documentation?**\n * A: You can customize the output by modifying the prompts templates found in the `prompt_templates` directory, adjusting settings in the `.env` file, or adding arguments to the CLI commands.\n\n* **Q: What if the AI generation fails?**\n * A: The CLI includes robust error handling. It will display informative error messages, which often provide hints to help debug the problem. Contact support if you're unable to resolve the issue.\n\n\n## Support\n\nFor support or bug reports, please open an issue on the [GitHub repository](<REPOSITORY_URL>). For urgent issues, contact <YOUR_EMAIL>\n\n",
"bugtrack_url": null,
"license": "Proprietary",
"summary": "AutoDocify is a command-line interface (CLI) tool designed to automate the generation of project documentation and placeholder test files. Leveraging the power of Large Language Models (LLMs), AutoDocify streamlines your development workflow by creating professional READMEs, basic technical documentation, and a starting point for your testing strategy",
"version": "0.5.0",
"project_urls": {
"Homepage": "https://github.com/grayStone-Inc/autodocify-cli",
"Issues": "https://github.com/grayStone-Inc/autodocify-cli/issues",
"Repository": "https://github.com/grayStone-Inc/autodocify-cli"
},
"split_keywords": [
"autodoc",
" documentation",
" automation",
" readme",
" tests",
" python",
" cli",
" llm",
" ai",
" developer",
" productivity",
" pytest",
" unittest",
" devtools"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5b72411212e779d826f6c6bf5db8f21e3f9995c1bf464d90eab224e9194d5f5d",
"md5": "6bcb1616a430dd65ed3b5ba939ed7134",
"sha256": "651d79b18c3d89943fddbb4b51f8b60c81c7abf1cd6503814e2f5efef80b110d"
},
"downloads": -1,
"filename": "autodocify_cli-0.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6bcb1616a430dd65ed3b5ba939ed7134",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.12",
"size": 27699,
"upload_time": "2025-02-08T23:59:40",
"upload_time_iso_8601": "2025-02-08T23:59:40.554827Z",
"url": "https://files.pythonhosted.org/packages/5b/72/411212e779d826f6c6bf5db8f21e3f9995c1bf464d90eab224e9194d5f5d/autodocify_cli-0.5.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0c99c11921a720ac5ebd422b95ec0f903867ef215c26e0d635d5d5b6edbc8807",
"md5": "af95b8ae39bf97f272f0db8995aa3d96",
"sha256": "753d96ec89e8ca91b874f38ead6fc4a2367176294bf80f11dd786cf60bbb02a7"
},
"downloads": -1,
"filename": "autodocify_cli-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "af95b8ae39bf97f272f0db8995aa3d96",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.12",
"size": 19141,
"upload_time": "2025-02-08T23:59:42",
"upload_time_iso_8601": "2025-02-08T23:59:42.375965Z",
"url": "https://files.pythonhosted.org/packages/0c/99/c11921a720ac5ebd422b95ec0f903867ef215c26e0d635d5d5b6edbc8807/autodocify_cli-0.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-08 23:59:42",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "grayStone-Inc",
"github_project": "autodocify-cli",
"github_not_found": true,
"lcname": "autodocify-cli"
}