stoplightio/spectral

A flexible JSON/YAML linter for creating automated style guides, with baked in support for OpenAPI (v3.1, v3.0, and v2.0), Arazzo v1.0, as well as AsyncAPI...

View on GitHub ↗Jump to charts ↓Open shareable report →

Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 2 hours ago
Added to GitGenius on September 21st, 2026
Created on August 15th, 2018
Open Issues & Pull Requests: 222 (+0)
GitHub issues: Enabled
Number of forks: 293
Total Stargazers: 3,217 (+1)
Total Subscribers: 33 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 23.7 days
Mean response time: 253.0 days
90th percentile: 929.0 days
Tracked items: 153

How this project is maintained

Roughly one issue in three opened in the past year never receives a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "chore" is answered fastest, typically in about 2 hours, while "p/medium" waits about 5 months. Only 47% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 113
New in 7 days: 2
Closed in 7 days: 2
Avg open age: 732 days
Stale 30+ days: 86
Stale 90+ days: 74

Recent activity

Opened in 7 days: 1
Closed in 7 days: 1
Comments in 7 days: 1
Events in 7 days: 2

Top labels

  • triaged (75)
  • t/bug (32)
  • enhancement (27)
  • chore (23)
  • released (16)
  • duplicate (12)
  • p/medium (12)
  • OpenAPI (8)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Spectral is a flexible JSON and YAML linter for creating automated style guides with built-in support for OpenAPI, Arazzo, and AsyncAPI specifications.

The tool solves the problem of enforcing consistency across API definitions and other structured documents by allowing teams to define and apply custom linting rules. It works by accepting a ruleset file that contains rules for validating JSON or YAML documents, then scanning target files against those rules to report violations. The project provides ready-to-use rulesets for OpenAPI v2, v3.0, v3.1, and v3.2, as well as AsyncAPI and Arazzo v1, eliminating the need to build rules from scratch for common API specification formats. It also includes a library of built-in functions for common validation patterns such as checking string patterns, parameter validation, alphabetical ordering, and key presence, while allowing developers to write custom functions for specialized requirements.

Teams should adopt Spectral if they need to enforce API style guides across multiple services or want to automate validation of OpenAPI, AsyncAPI, or Arazzo documents. It suits organizations that have already standardized on these specification formats and want to prevent inconsistencies at the linting stage rather than during review. The tool is particularly valuable for teams building API-first architectures where multiple teams contribute specifications that must conform to organizational standards.

The project maintains active development with regular updates to support new specification versions and enhancements to its rule engine. The codebase shows consistent refinement of core functionality and responsiveness to user needs through documentation and feature additions.