# fastapi-scaf **Repository Path**: cxdfounder/fastapi-scaf ## Basic Information - **Project Name**: fastapi-scaf - **Description**: No description available - **Primary Language**: Python - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-12-25 - **Last Updated**: 2025-02-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 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 - ... - more docs: [请点击链接](https://blog.csdn.net/atpuxiner/article/details/144291336?fromshare=blogdetail&sharetype=blogdetail&sharerId=144291336&sharerefer=PC&sharesource=atpuxiner&sharefrom=from_link) ## 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 ``` ## Installation This package can be installed using pip (Python>=3.11): > pip install fastapi-scaf ## Scaf Usage - 1)help document - `fastapi-scaf -h` - 2)new project - `fastapi-scaf new ` - 3)add api - `cd to project root dir` - `fastapi-scaf add ` ## Project Run - 1)cd to project root dir - 2)modify the configuration, such as for the database - 3)`pip install -r requirements.txt` - 4)`python main_dev.py` - production environment: `uvicorn app.main:app --host=0.0.0.0 --port=8000 --log-level=info --log-config=./config/uvicorn_logging.json --workers=5` - about uvicorn: [www.uvicorn.org](https://www.uvicorn.org/) ## LICENSE This project is released under the MIT License (MIT). See [LICENSE](LICENSE)