MuseMVP 文档
API 接口

API 架构

MuseMVP 的 API 总览:为什么选 Hono、如何在 Next.js 接入,以及可用性与观测入口。

MuseMVP 使用 Hono + Next.js Route Handler 组合:所有 API 统一走 /api/*,并由 Hono 管理路由与中间件。

Overview

src/app/api/[[...rest]]/route.ts
src/backend/api/app.ts
src/backend/api/routes/

请求链路保持单一入口:/api/* -> route.ts -> Hono app.ts -> feature router -> service/query。


Why Hono

选择 Hono 的原因很直接:

  • 轻量,路由与中间件组织清晰
  • TypeScript 友好,便于构建类型安全 API Client
  • 易于集成 OpenAPI,方便接口协作

相比把逻辑分散在多个 Route Handler,集中式 API 层更容易维护。


Availability

默认情况下,API 与 Web 一起对外提供,不需要维护两套入口。
如果后续接入移动端、插件或第三方客户端,也可以复用这套 Hono 路由。

常见路由组(示例):

  • /api(auth)
  • /api/admin/api/aichat/api/upload
  • /api/muse-billing/api/upgrade/api/newsletter
  • /api/health
  • /api/openapi/api/docs

分层约定:

  • Route:参数校验、权限、HTTP 响应
  • Service(src/modules/<feature>/lib/*):业务编排
  • Query(src/backend/database/queries/*):数据库读写

Observability

  • 健康检查:/api/health
  • OpenAPI:/api/openapi
  • API 文档(Scalar UI):/api/docs

实践建议

中间件只做入口职责(日志、跨域、鉴权门禁);复杂业务逻辑放到 service 层,避免 API 入口层膨胀。

On this page

Get $30 off with code
XHS30OFF

Get MuseMVP