You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
iTi-Flask/README.md

2.6 KiB

iTi-Flask

iTi-Flask 是 FastAPI 后端框架基座。

AI 修改框架代码或文档时优先读:

.codex/skills/iti-flask-framework/SKILL.md

它提供业务项目常用的通用能力:

  • FastAPI 应用工厂。
  • dataclass 配置和 .env 加载。
  • MySQL 默认数据库配置。
  • SQLAlchemy 2 和 Alembic。
  • JWT、权限依赖、错误处理、响应包装。
  • 用户 token / 服务 token 的统一 Actor 依赖。
  • 缓存、限流、事件总线。
  • 模块注册、权限元数据、菜单 seed 元数据。
  • 同步 HTTP 服务客户端。
  • 运行日志和审计事件 sender。
  • 单机轻量任务 runner。
  • /health/ready 健康检查。
  • Copier 业务项目模板。

系统业务不在框架内。 需要用户、角色、菜单、字典、文件、日志等能力时,业务项目额外注册 iti-system

安装

框架本地开发:

./scripts/iti.sh install

Windows

scripts\iti.cmd install

业务项目依赖:

dependencies = [
  "iti-flask @ git+https://git.noahlan.cn/iti-framework/iTi-Flask.git@v0.2.2",
]

应用工厂

from iti import create_app

from config import config
from my_app.modules.example import ExampleModule

app = create_app(
    config_mapping=config,
    modules=[ExampleModule()],
)

运行:

./scripts/iti.sh serve 8000

该命令会启动框架最小应用,可用于验证 /health/ready

业务项目生成

./scripts/iti.sh make-app ../my-business-app my_business_app
cd ../my-business-app
./app.sh init
./app.sh serve 8000

同步框架依赖和模板骨架:

./app.sh framework-sync
./app.sh template-check
./app.sh template-update

iti-system

./scripts/iti.sh make-system-app ../my-system-app my_system_app
cd ../my-system-app
./app.sh init-system

所有脚本都带中文 help

./scripts/iti.sh help
./app.sh help

发布框架:

./scripts/iti.sh release
./scripts/iti.sh release v0.2.2

Windows:

scripts\iti.cmd release
scripts\iti.cmd release v0.2.2

文档