Skip to content

Latest commit

 

History

History
67 lines (48 loc) · 2.27 KB

README.zh-Hans.md

File metadata and controls

67 lines (48 loc) · 2.27 KB

한국어 | English | 日本語 | 简体中文 | 繁體中文

🦴 Spine

Spine

Spine 是一个让请求执行流程清晰可见的后端框架。
它不会隐藏请求如何解析和执行。

核心理念

  • 通过代码结构固定执行顺序和职责
  • 方法签名即 API 契约
  • 使用 path.*、query.*、httperr.* 语义类型

链接


Spine CLI

Spine CLI 是一个 Go CLI,用于生成 Spine 项目和组件, 并从源代码检查 HTTP、DI、拦截器、消费者和 WebSocket 的执行契约。它还支持契约快照与差异比较, 以及导出 OpenAPI 和 AsyncAPI 文档。

使用 Go 1.25.5 或更高版本安装简短的 spine 命令。

go install github.com/NARUBROWN/spine-cli/cmd/spine@v0.1.4
spine version

创建新项目或检查现有项目的契约。

spine new todo-api --module github.com/acme/todo-api
spine context --root ./todo-api --json
spine contract check --root ./todo-api --warnings-as-errors --json
spine verify --root ./todo-api --warnings-as-errors --json

生成器默认不会覆盖现有文件。应用更改前,请检查 dry-run 的差异和 base_hash, 然后将同一个哈希值传给 --if-match。

spine g resource order --root . --dry-run --json
spine g resource order --root . --if-match <base_hash> --json

Spine CLI v0.1.4 会将新生成项目的 Spine 版本固定为 v0.5.1。与本仓库的其他版本或开发快照 配合使用时,请检查生成的 go.mod 和契约检查结果。完整命令和准确的分析边界请参阅 Spine CLI 文档。


许可证

MIT