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.
# Run this in your global environment
pip install ApimaticUpgrade to the latest version:
pip install --upgrade ApimaticApimatic now uses commands to separate actions.
1. Generate Documentation:
apimatic generate [OPTIONS]2. Configure API Keys:
apimatic config [OPTIONS]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_KEYThe key will be stored securely in your home directory.
| 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) |
Basic Generation:
# Generate Markdown docs from the current project
apimatic generate --src . --output API_Docs.mdForce Framework:
# Force detection for a Flask app
apimatic generate --src ./my_flask_app --framework flaskAI-Enhanced Documentation:
First, set your key:
apimatic config --set-openai-key sk-xxxxxxxxThen, 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| 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. |
Contributions are welcome! Please fork the repo, make your changes, and submit a PR.
This project is licensed under the MIT License.