Skip to main content

FastAPI CLI

Project description

Fastapi CLI

在使用 FastAPI 前,我个人使用 Flask 居多,比较喜欢 Flask 的 CLI,使用起来比较方便,这个项目就是解决 FastAPI 没有 CLI 的问题

使用它自动加载项目中已有的 Typer 实例

使用前

假设我们的 CLI 代码在下面的路径app/cli/init.py

import typer

app = typer.Typer()

@app.command()
def version():
    return "1.0.0"

为了方便执行,我们需要在项目根目录新增一个入口文件如cli.py并添加下面的内容

from app.cli import app

if __name__ == __main__:
    app()

最后执行

python cli.py --help

使用后

使用 fastcli 由于 app.cli:app 在默认路径下,因此会自动加载,我们只需要运行下面的命令即可

fastcli --help

安装使用

安装

pip install fastapi-fastcli

# 安装TAB自动补全
fastcli --install-completion

查看路由列表

fastcli routes

启动 FastAPI 应用

fastcli run

在运行时所在的目录 查找下列路径

- app.commands:app
- app.cli:app
- cli:app
- main:cli
- manage:cli
- app:cli

你也通过环境变量 TYPER_APP指定

功能

  • 查看路由
  • 启动 FastAPI 应用(uvicron)

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

fastapi_fastcli-0.1.6.tar.gz (3.1 kB view details)

Uploaded Source

Built Distribution

fastapi_fastcli-0.1.6-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file fastapi_fastcli-0.1.6.tar.gz.

File metadata

  • Download URL: fastapi_fastcli-0.1.6.tar.gz
  • Upload date:
  • Size: 3.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.12 Linux/5.15.0-83-generic

File hashes

Hashes for fastapi_fastcli-0.1.6.tar.gz
Algorithm Hash digest
SHA256 e14e6178aa2eeb69ea9ae87e754ad99446e898b0d74de9b8ee3451ef8e943552
MD5 d6f4d6bf9f767c6daf075449cefaed9b
BLAKE2b-256 a8df7b43cab606c00452f3c86c58b182ef45cd40b312db4d0522803493a11d31

See more details on using hashes here.

File details

Details for the file fastapi_fastcli-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: fastapi_fastcli-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.12 Linux/5.15.0-83-generic

File hashes

Hashes for fastapi_fastcli-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a591ced5e486878fa7a791579041b358adcba0feead4f07c2467c0a72f8cfde5
MD5 ef624f9dfd61d4d323cfedd5e76be31a
BLAKE2b-256 02a269ba79acf6ad15344b8a39013d3b2a47d67ee8362461aab69f7c695c3672

See more details on using hashes here.

Supported by

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