Skip to content

Apimatic automates the creation of API documentation. This module intelligently fetches data from your APIs and compiles it into a clear, organized .md file, eliminating manual updates. It ensures your documentation is always accurate and up-to-date, freeing you to focus on development.

License

Matrixxboy/Apimatic

Repository files navigation

Apimatic 🚀

Matrixxboy PyPI version Downloads Python Version License

pypi version npm version

A tool to automatically generate beautiful and comprehensive API documentation (Markdown) from your source code.
Supports Flask, FastAPI, and more frameworks with optional AI-powered enhancements via Ollama, OpenAI, Google Gemini, and Groq.


📦 Installation

# Run this in your global environment
pip install Apimatic

Upgrade to the latest version:

pip install --upgrade Apimatic

⚡ Usage

Apimatic now uses commands to separate actions.

1. Generate Documentation:

apimatic generate [OPTIONS]

2. Configure API Keys:

apimatic config [OPTIONS]

🔑 Configuration

To use AI enhancements from providers like OpenAI, Google Gemini, or Groq, you must set an API key.

# Set your OpenAI API key
apimatic config --set-openai-key YOUR_API_KEY

# Set your Google Gemini API key
apimatic config --set-gemini-key YOUR_API_KEY

# Set your Groq API key
apimatic config --set-groq-key YOUR_API_KEY

The key will be stored securely in your home directory.


⚙️ Generation Options

Option Description
-h, --help Show help message and exit
--src SRC Root directory of the project to scan (Default: current directory)
--framework [FRAMEWORK ...] Force a specific framework (flask, fastapi, etc.). If omitted, auto-detected
--format {markdown} Output format (Default: markdown)
--output OUTPUT Path for the generated output file (Default: API_Docs.md)
--use-ollama Enhance with a local Ollama model
--ollama-model MODEL Ollama model to use (e.g., phi3:mini)
--use-openai Enhance with an OpenAI model
--openai-model MODEL OpenAI model to use (e.g., gpt-4o-mini)
--use-google-gemini Enhance with a Google Gemini model
--google-gemini-model MODEL Gemini model to use (e.g., gemini-1.5-flash)
--use-groq Enhance with a Groq model
--groq-model MODEL Groq model to use (e.g., llama3-8b-8192)

📝 Examples

Basic Generation:

# Generate Markdown docs from the current project
apimatic generate --src . --output API_Docs.md

Force Framework:

# Force detection for a Flask app
apimatic generate --src ./my_flask_app --framework flask

AI-Enhanced Documentation:

First, set your key:

apimatic config --set-openai-key sk-xxxxxxxx

Then, generate with enhancement:

# Use OpenAI's gpt-4o-mini model
apimatic generate --src . --use-openai --openai-model gpt-4o-mini

# Use Google Gemini
apimatic generate --src . --use-google-gemini

# Use Groq's fast Mixtral model
apimatic generate --src . --use-groq

# Use a local Ollama model
apimatic generate --src . --use-ollama --ollama-model phi3:mini

🤖 Recommended AI Models

Provider Recommended Model Notes
Ollama (Local) phi3:mini, llama3:8b Fast, free, and runs on your machine. Great for privacy.
OpenAI gpt-4o-mini Excellent balance of cost, speed, and intelligence.
Google Gemini gemini-1.5-flash Fast and cost-effective model from Google.
Groq llama3-8b-8192 Incredibly fast inference speeds.

🤝 Contributing

Contributions are welcome! Please fork the repo, make your changes, and submit a PR.


📄 License

This project is licensed under the MIT License.

About

Apimatic automates the creation of API documentation. This module intelligently fetches data from your APIs and compiles it into a clear, organized .md file, eliminating manual updates. It ensures your documentation is always accurate and up-to-date, freeing you to focus on development.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published