modify: 插件初始化
This commit is contained in:
@@ -8,21 +8,22 @@
|
||||
|
||||
## 核心特性
|
||||
|
||||
| 特性 | 说明 |
|
||||
| --------------------- | -------------------------------------------------------------- |
|
||||
| **FastAPI + Uvicorn** | 高性能异步 Web 框架,自动生成 OpenAPI 文档 |
|
||||
| **Zenoh 服务发现** | 基于 liveliness 的 Worker 注册与 RPC 调用,负载均衡 + 超时重试 |
|
||||
| **MQTT 集成** | 内嵌 amqtt Broker,MQTT ↔ Worker 双向桥接 |
|
||||
| **动态路由生成** | 扫描 `config/workers/*.toml` 自动注册 HTTP 路由 |
|
||||
| **Worker 框架** | `@rpc_method` 装饰器 + 自动参数解析 + Pydantic 模型绑定 |
|
||||
| **自动化模型生成** | `gen_models` 根据 TOML 配置生成请求/响应模型 |
|
||||
| **JWT 鉴权** | Rust 实现,路由级 `auth_required` 控制 |
|
||||
| **Argon2id 密码哈希** | Rust 实现的高性能密码安全方案 |
|
||||
| **异步 SQLite** | aiosqlite + SQLModel,多进程并发安全 |
|
||||
| **本地文件存储** | 内置文件上传/下载端点 |
|
||||
| **流媒体代理** | ffmpeg + MediaMTX RTSP 流转发 |
|
||||
| **构建打包** | PyInstaller / Nuitka 一键打包为独立可执行文件 |
|
||||
| **Vue 3 前端** | Element Plus UI、Pinia 状态管理、类型安全的 API 客户端 |
|
||||
| 特性 | 说明 |
|
||||
| --------------------- | -------------------------------------------------------------------- |
|
||||
| **FastAPI + Uvicorn** | 高性能异步 Web 框架,自动生成 OpenAPI 文档 |
|
||||
| **Zenoh 服务发现** | 基于 liveliness 的 Worker 注册与 RPC 调用,负载均衡 + 超时重试 |
|
||||
| **MQTT 集成** | 内嵌 amqtt Broker,MQTT ↔ Worker 双向桥接 |
|
||||
| **动态路由生成** | 扫描 `config/workers/*.toml` 自动注册 HTTP 路由 |
|
||||
| **Worker 框架** | `@rpc_method` 装饰器 + `Plugin` 基类统一生命周期 + Pydantic 模型绑定 |
|
||||
| **自动化模型生成** | `gen_models` 根据 TOML 配置生成请求/响应模型 |
|
||||
| **插件脚手架** | `gen_plugin` 一键生成风格统一的 Worker 插件骨架 |
|
||||
| **JWT 鉴权** | Rust 实现,路由级 `auth_required` 控制 |
|
||||
| **Argon2id 密码哈希** | Rust 实现的高性能密码安全方案 |
|
||||
| **异步 SQLite** | aiosqlite + SQLModel,多进程并发安全 |
|
||||
| **本地文件存储** | 内置文件上传/下载端点 |
|
||||
| **流媒体代理** | ffmpeg + MediaMTX RTSP 流转发 |
|
||||
| **构建打包** | PyInstaller / Nuitka 一键打包为独立可执行文件 |
|
||||
| **Vue 3 前端** | Element Plus UI、Pinia 状态管理、类型安全的 API 客户端 |
|
||||
|
||||
---
|
||||
|
||||
@@ -45,7 +46,7 @@ chongming-zenoh/
|
||||
│ │ ├── app/
|
||||
│ │ │ ├── core/ # WorkerManager, RouteGenerator, MQTTBridge, auth
|
||||
│ │ │ └── routes/ # 内置路由(文件上传等)
|
||||
│ │ └── scripts/ # build, gen_models
|
||||
│ │ └── scripts/ # build, gen_models, gen_plugin
|
||||
│ ├── chongming-web/ # Vue 3 前端
|
||||
│ │ └── src/
|
||||
│ │ ├── api/generated/ # 自动生成 API 客户端
|
||||
@@ -264,6 +265,7 @@ python publisher.py example add '{"a":3,"b":5}' # 调用 add
|
||||
|
||||
```bash
|
||||
uv run serve # 启动开发服务
|
||||
uv run gen_plugin <name> # 生成统一风格插件骨架
|
||||
uv run python -m chongming.scripts.gen_models # 生成 Pydantic 模型
|
||||
uv run python -m chongming.scripts.build # 构建打包(PyInstaller/Nuitka)
|
||||
uv pip install -e utils/<name> # 安装/更新工具包
|
||||
@@ -326,6 +328,7 @@ uv run python -m chongming.scripts.build nuitka
|
||||
|
||||
```bash
|
||||
uv run serve # 启动开发服务器
|
||||
uv run gen_plugin <name> # 生成统一风格插件骨架
|
||||
uv run python -m chongming.scripts.gen_models # 生成 Pydantic 模型
|
||||
uv run build pyinstaller # PyInstaller 打包
|
||||
uv run build nuitka # Nuitka 打包
|
||||
|
||||
Reference in New Issue
Block a user