Skip to main content

This is a fastapi scaf.

Project description

fastapi-scaf

What is this?

  • by: axiner
  • fastapi-scaf
  • This is a fastapi scaf.
    • new project
    • add api
    • about project:
      • auto init project (conf, db, logger...)
      • auto register router
      • auto register middleware

Installation

This package can be installed using pip (>=Python3.9):

pip install fastapi-scaf

Scaf Usage

  • 1)new project
    • fastapi-scaf new <project_name>
  • 2)add api
    • cd to project root dir
    • fastapi-scaf add <api_name>

Project Run

  • 1)cd to project root dir
  • 2)execute command:
    • pip install -r requirements.txt
    • uvicorn app.main:app --host=0.0.0.0 --port=8000 --log-level=debug --log-config=./config/uvicorn_logging.json --workers=5
    • about uvicorn: www.uvicorn.org

Project Structure

  • ABD: ABD模式
    • A api
    • B business
    • D datatype
  • 调用过程: main.py(initializer) - router(middleware) - api - business - (datatype)
  • 结构如下: (命名经过多次修改敲定,简洁易懂,ABD目录贴合避免杂乱无章)
    └── fastapi-scaf
        ├── app                         (应用)
        │   ├── api                     ├── (api)
        │   │   └── v1                  │   └── (v1)
        │   ├── business                ├── (业务)
        │   ├── datatype                ├── (数据类型)
        │   ├── initializer             ├── (初始化)
        │   │   ├── conf                │   ├── (配置)
        │   │   ├── db                  │   ├── (数据库)
        │   │   ├── logger              │   ├── (日志)
        │   │   └── ...                 │   └── (...)
        │   ├── middleware              ├── (中间件)
        │   ├── router                  ├── (路由)
        │   ├── utils                   ├── (utils)
        │   └── main.py                 └── (main.py)
        ├── config                      (配置目录)
        ├── deploy                      (部署目录)
        ├── docs                        (文档目录)
        ├── log                         (日志目录)
        ├── .gitignore
        ├── LICENSE
        ├── README.md
        └── requirements.txt
    

LICENSE

This project is released under the MIT License (MIT). See LICENSE

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

fastapi_scaf-1.1.2-py3-none-any.whl (16.6 kB view details)

Uploaded Python 3

File details

Details for the file fastapi_scaf-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: fastapi_scaf-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 16.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for fastapi_scaf-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 47ce67c37752c1f49a6536c92e1b620eb7494bfb9d49f42977b201f6105c06db
MD5 baf8e3edf2476602a2045b7af721dec5
BLAKE2b-256 e843a6d384b1334ffd4b50c22aaac216df7e0c5a6a7bf61152b37fd7c38138eb

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