2 Star 8 Fork 6

cps-cli-template / fastapi

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

项目简介

个人自用的 fastapi 项目基础模板集成很多自己常用的服务器基础功能,上手即用

English | 简体中文

功能特色

  • 集成中间件

    • gzip
    • 一键跨域
    • 定时任务
      • 基于asyncio的原生装饰器方式
      • fastapi-gino-arq-uvicorn
      • apscheduler
      • Celery
  • 数据库操作

    • redis
    • mongodb
    • mysql
  • 文件上传

    • 根据文件类型自动分类(类型 >上传日期 > 文件名)
    • 小文件上传,直接通过内存接收整个文件
    • 大文件上传,以流的形式接收文件,每次指定大小
  • 离线的swagger-ui修复

  • static静态服务器文件夹

  • 日志系统

    • 基于logging
    • 基于loguru
  • 其他功能

    • 基于ini配置文件
    • 所有集成的功能都带一键开关
    • 自动创建常用文件夹

目录结构

DIR:template-fastapi                 #
   |-- dependencies/                 # 「dependencies」
   |   `-- __init__.py               #
   |-- docs/                         # 「docs」存放说明相关的文件
   |   |-- __init__.py               #
   |   `-- description.py            #
   |-- events/                       # 「events」事件层
   |   |-- __init__.py               #
   |   |-- startup.py                # 所有startup事件汇总的入口文件
   |   `-- config_check.py           # 检查config中所有key为*_path结尾的目录是否存在,自动创建对应目录
   |-- internal/                     # 「internal」
   |   `-- __init__.py               #
   |-- middleware/                   # 「middleware」中间件层,常用的中间件
   |   |-- logger.py                 #
   |   |-- gzip.py                   #
   |   `-- cors.py                   #
   |-- routers/                      # 「routers」路由层
   |   |-- v1/                       # 「v1」如果是定制
   |   |   `-- __init__.py           #
   |   |-- __init__.py               #
   |   |-- upload_router_template.py #
   |   |-- upload.py                 #
   |   |-- test.py                   #
   |   |-- static.py                 #
   |   `-- docs.py                   #
   |-- static/                       # 「static」默认的静态文件目录,可以在config.py指定
   |   |-- swagger-ui.css            #
   |   |-- swagger-ui-bundle.js      #
   |   `-- redoc.standalone.js       #
   |-- test/                         # 「test」测试
   |   `-- async_test.py             #
   |-- tools/                        # 「tools」全局组件层
   |   |-- __init__.py               #
   |   |-- uploader.py               # 上传组件
   |   |-- test.py                   #
   |   `-- schedule.py               # 定时组件
   |-- utils/                        # 「utils」
   |   `-- logger.py                 #
   |-- __init__.py                   #
   |-- Types.py                      # 一些全局类型存放
   |-- tree.yaml                     # 项目结构文件
   |-- test.py                       #
   |-- requirements.txt              #
   |-- README                        #
   |-- main.py                       #
   |-- config.py                     # 「关键文件」所有配置
   |-- config.ini                    # 「关键文件」
   `-- .gitignore                    #

安装 | Install

npm i @mucpsing/cli -g

使用 | Usage

cps -t fastapi <project_name>

空文件

简介

个人自用fastapi基本框架,内置了一些常用的功能和根据经验将项目目录做了结构化 展开 收起
Python 等 3 种语言
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/cps-cli-template/fastapi.git
git@gitee.com:cps-cli-template/fastapi.git
cps-cli-template
fastapi
fastapi
master

搜索帮助