Flask Admin
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.
 
 
 
 
Go to file
NoahLan 49a0a491e8 feat: 统一封装框架 HTTP 错误响应 2 weeks ago
.codex/skills docs: 文档整理 2 weeks ago
.cursor/rules feat: 修复优化一些逻辑; 自研一个上传算法; 修正gitignore; 切换开发环境为mysql; 4 months ago
.vscode feat: first commit. 7 months ago
copier-template feat: 统一封装框架 HTTP 错误响应 2 weeks ago
docs feat: 统一封装框架 HTTP 错误响应 2 weeks ago
iti feat: 统一封装框架 HTTP 错误响应 2 weeks ago
migrations refactor: rebuild fastapi framework foundation 2 weeks ago
scripts fix: 忽略外部虚拟环境变量 2 weeks ago
tests feat: 统一封装框架 HTTP 错误响应 2 weeks ago
.env.example refactor: 重构框架项目,轻量微服务+copier+底包仓库依赖方式,而非代码直接进入 3 weeks ago
.gitignore refactor: remove system module and related code 2 weeks ago
LICENSE.txt feat: first commit. 7 months ago
README.md feat: 统一封装框架 HTTP 错误响应 2 weeks ago
pyproject.toml refactor: rebuild fastapi framework foundation 2 weeks ago

README.md

iTi-Flask

iTi-Flask 是 FastAPI 后端框架基座。 名称保留历史包名,运行时已经不依赖 Flask/APIFlask。

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

  • 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+ssh://git@your-git/iTi/iTi-Flask.git@v0.2.0",
]

应用工厂

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

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

文档