@apisyouwonthate/spectral-jsonapi

中文文档
2.2.0发布于 2026/04/22MITTypeScriptESM + CJS构建来源已验证近 30 天下载 2614

JSON:API的光谱规则集,以TypeScript来构建.

中文使用文档
文档目录10 节
  1. QQ 快速启动
  2. 使用量
  3. 用作 npm 软件包
  4. 从 GitHub 直接使用遗留的 YAML
  5. 规则外出
  6. 资源对象- id- 需要
  7. 捐款
  8. 谢谢
  9. 许可证
  10. 提案国

光谱 JSON:API 规则集

Node.js CI

使用此 Spectral ruleset 自动检查 OpenAPI 描述是否符合 JSON:API v1.1 , 这样 API 团队就可以及早在编辑器, CI 中捕捉出问题并拉出请求.

QQ 快速启动

npm install --save-dev spectral-jsonapi @stoplight/spectral-cli

创建本地规则集文件 :

# .spectral.yaml
extends:
  - spectral:oas
  - "@apisyouwonthate/spectral-jsonapi"

显示您的 OpenAPI 描述 :

spectral lint api/openapi.yaml

使用量

用作 npm 软件包

当工程已经安装 npm 的依赖时使用此功能 .

# .spectral.yaml
extends:
  - spectral:oas
  - "@apisyouwonthate/spectral-jsonapi"

从 GitHub 直接使用遗留的 YAML

如果您想要不安装软件包而消耗生成的 YAML 规则集, 请使用 :

extends:
  - "https://raw.githubusercontent.com/apisyouwonthate/spectral-jsonapi/refs/heads/main/.spectral.yml"

一旦设置了规则,您就可以在相同的目录中运行 Spectral .spectral.yml 规则,它将包含 JSON: API 规则在它的检查中

spectral lint api/openapi.yaml

这不包括: spectral:oas 规则,所以得到这些 加到 extend 列表 :

extends:
  - "https://raw.githubusercontent.com/apisyouwonthate/spectral-jsonapi/refs/heads/main/.spectral.yml"
  - spectral:oas

规则外出

资源对象- id- 需要

仅在一个响应计划故意不是标准JSON:API资源对象(例如,没有稳定ID的ephemeral计算资源)时才使用此选择退出.

设定 x-jsonapi-virtual-resource: true 用于跳过 resource-object-id-required 警告 警告他们.

components:
  schemas:
    AvailableSlotResource:
      type: object
      x-jsonapi-virtual-resource: true
      required:
        - type
        - attributes
      properties:
        type:
          type: string
          enum:
            - availableSlot
        attributes:
          $ref: "#/components/schemas/AvailableSlotAttributes"

捐款

关于测试方法和贡献者工作流程,见 捐款额。 。 。 .

谢谢

许可证

麻省理工学院. 见 自由主义。 。 。 .

提案国

如果你愿意感谢这个风格指南,考虑支持 保护地球由APIs You Won't Hate联合创办的慈善机构 菲尔·斯德克森 专注于自然气候解决方案 菲尔花大部分时间种树 和再湿的沼泽现在, 特别是在 沃利自然保护区因此,这是一个伟大的方法 支持他的工作和地球 同时.

版本与发布记录

@apisyouwonthate/spectral-jsonapi 共发布 6 个版本,首次发布于 2026/04/01;过去 12 个月发布了 6 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
2.2.0latest2026/04/226 个月前
2.1.12026/04/226 个月前
2.1.02026/04/087 个月前
1.1.02026/04/087 个月前
1.0.02026/04/087 个月前
2.0.02026/04/017 个月前

关于 @apisyouwonthate/spectral-jsonapi 的常见问题

@apisyouwonthate/spectral-jsonapi 是什么?

JSON:API的光谱规则集,以TypeScript来构建.

如何安装 @apisyouwonthate/spectral-jsonapi?

在项目目录运行 npm install @apisyouwonthate/spectral-jsonapi,或使用 pnpm add / yarn add / bun add。

@apisyouwonthate/spectral-jsonapi 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@apisyouwonthate/spectral-jsonapi 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@apisyouwonthate/spectral-jsonapi 可以商用吗?

@apisyouwonthate/spectral-jsonapi 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@apisyouwonthate/spectral-jsonapi 的下载量有多少?

根据 npm 官方下载统计,@apisyouwonthate/spectral-jsonapi 在 2026/10/06 – 2026/11/04 这 30 天内被下载 2,614 次,日均约 87 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@apisyouwonthate/spectral-jsonapi 还在维护吗?

最新版本 2.2.0 发布于 2026/04/22(6 个月前);至今共发布 6 个版本,其中过去 12 个月发布了 6 个;首次发布于 2026/04/01。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。