AI-powered API documentation generator — analyze your backend, generate professional docs.
Project description
Intellapi
AI-powered API documentation generator. Analyze a backend project and generate professional API documentation using the LLM of your choice.
Features
- Safe project analysis: Scans code without importing or running the app
- Backend detection + picker: Finds candidate backend folders and lets you choose interactively
- OpenAPI-assisted generation: Accepts local or remote OpenAPI specs to supplement source analysis
- Multi-provider: OpenAI-compatible endpoints, Anthropic, and AWS Bedrock
- Privacy-first: Never sends secrets, credentials, or unnecessary files to the LLM
- Flexible output: Markdown, plain text, or both
Installation
pip install intellapi
Or with pipx:
pipx install intellapi
Quick Start
intellapi init
cd my-backend-project
intellapi generate
Milestones M1-M3 are now in place: the CLI, provider setup, privacy guardrails, backend detection, OpenAPI merge, Python extractors, and Node/TypeScript extractors are implemented. Static analysis is strongest on common routing patterns; when a project uses heavily custom abstractions, OpenAPI input is still the safest fallback.
Supported Frameworks
| Language | Framework | Current support |
|---|---|---|
| Python | FastAPI | Source extraction for routers, handlers, params, models, and auth hints |
| Python | Flask | Source extraction for routes, blueprints, payloads, and auth hints |
| Python | Django REST | Source extraction for views, routers, serializers, and custom actions |
| JavaScript/TypeScript | Express | Source extraction for app/router routes, mounted prefixes, payloads, and auth hints |
| JavaScript/TypeScript | Next.js | Source extraction for App Router and Pages Router API handlers |
| JavaScript/TypeScript | SvelteKit | Source extraction for +server endpoints, params, and JSON handlers |
LLM Providers
| Provider | Config key | Notes |
|---|---|---|
| AWS Bedrock | bedrock |
Uses the standard AWS credential chain |
| Anthropic | anthropic |
API key stored in OS keyring or provided via env |
| OpenAI-compatible | openai_compatible |
Covers OpenAI, OpenRouter, Ollama, and compatible gateways |
Configuration
Global config lives in ~/.intellapi/config.yml. Project config lives in .intellapi.yml. Secrets are never stored in config files; use intellapi init or environment variables.
Example user config:
provider: bedrock
model: anthropic.claude-3-haiku-20240307-v1:0
aws_region: us-east-1
Example project config:
output_format: md
output_filename: API_DOCUMENTATION.md
exclude:
- "tests/"
- "migrations/"
CLI Reference
intellapi init
intellapi generate
intellapi generate --path ./backend
intellapi generate --dry-run
intellapi generate --openapi-file ./openapi.json
intellapi doctor
intellapi config show
intellapi config set model gpt-4o-mini
License
MIT
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 intellapi-0.1.0.tar.gz.
File metadata
- Download URL: intellapi-0.1.0.tar.gz
- Upload date:
- Size: 60.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1cfc7f7ff7ef8b16cd0d2cd658b6802a10ade4aefa1b6317703b8a58fb4ecc35
|
|
| MD5 |
93a59fde51ca8971948ee9ad43755256
|
|
| BLAKE2b-256 |
1c2aa01edabdec74d95e2fd764af980e06c3cdef4941ea0c81d87bba3821f4a1
|
File details
Details for the file intellapi-0.1.0-py3-none-any.whl.
File metadata
- Download URL: intellapi-0.1.0-py3-none-any.whl
- Upload date:
- Size: 60.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c47148cd1420e737f66a2ec18fbb43d2d9c9d3f395eabf07daefeb3a1ed948a8
|
|
| MD5 |
95cc209d2502b0ebaa7e145847307c83
|
|
| BLAKE2b-256 |
b7280ad03626b3e11432bc89853ec031ef9b75ef71898f0d4a54615dcca0536d
|