Skip to main content

SmartDoc: A tool to generate API documentation for FastAPI, Flask, and Django projects.

Project description

SmartDoc CLI

SmartDoc CLI is a command-line tool that automatically generates Markdown, HTML, and PDF API documentation for web frameworks like FastAPI, Flask, and Django.


Installation

pip install smartdoc-cli

(For testing with Test PyPI)

pip install --index-url https://test.pypi.org/simple/ smartdoc


Usage

Run this command inside your project directory.

Example command:

smartdoc generate \
  --app your_app.main \
  --framework fastapi \
  --output api_docs.md \
  --html \
  --pdf

For FastAPI:

smartdoc generate --app your_project.main --framework fastapi --output docs.md --html --pdf

For Flask:

smartdoc generate --app your_project.main --framework flask --output docs.md --html --pdf

For Django:

smartdoc generate --app your_project.main --framework django --django-settings your_project.settings --output docs.md --html --pdf

CLI Options

Option Description
--app / -a Python path to your app module
--framework / -f One of fastapi, flask, django
--output / -o Output Markdown filename (default: api_docs.md)
--html Generate HTML output
--pdf Generate PDF output
--django-settings Required for Django to specify settings module

Output

Depending on options used:

api_docs.md — default markdown output

api_docs.html — HTML format (with --html)

api_docs.pdf — PDF format (with --pdf)


Author

Built with 💻 by Mohammad Safwan Athar @DevSaifOps


License

This project is licensed under the MIT License.


MIT License

Copyright (c) 2025 Mohammad Safwan Athar aka DevSaifOps

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

smartdoc_cli-0.1.2.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

smartdoc_cli-0.1.2-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file smartdoc_cli-0.1.2.tar.gz.

File metadata

  • Download URL: smartdoc_cli-0.1.2.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for smartdoc_cli-0.1.2.tar.gz
Algorithm Hash digest
SHA256 f27d854904d62e812f0ec2439c1d0d90baab50f79c532412d5ffaf5d16ab4137
MD5 1a60d879680cac2d1bbdc8e834a52239
BLAKE2b-256 fa82ef1f4f946d73d2c69a2d2437f142e3314dce8646d32fd29e711d30c48760

See more details on using hashes here.

File details

Details for the file smartdoc_cli-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: smartdoc_cli-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.4

File hashes

Hashes for smartdoc_cli-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 07559967e1ce902afd6bea010146a9c50a23e40feed956cdc5dcad469532b69f
MD5 5db3785fb76291518c0733813b5d7f44
BLAKE2b-256 d3d1a7d695c896bc340cd7886c36ce53a92dc7d6c3e53638d4fba58a56e1f945

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page