FREEDOM251

Freedom251 › API Governance Software

vacuum

Free plan APIExtensionLinuxMacSelf-hostedWindows

Visit vacuum Alternatives

vacuum's own site

What vacuum is

vacuum is a free, open-source tool for checking OpenAPI, AsyncAPI and JSON Schema specifications. It reads YAML and JSON, supports OpenAPI 2 and 3+, AsyncAPI 3 and JSON Schema, and rejects AsyncAPI 2.x documents. Written in Go, it is multi-threaded and built for use as a command-line tool or as a library in other applications. Its maker says it is designed to process very large specifications, using an index for complex rules.

Results can appear in a console dashboard, interactive HTML report or sealed report that can be rendered again without running lint logic again. HTML reports have no external dependencies and work offline. vacuum accepts Spectral rulesets, and its own ruleset is described as a superset of Spectral’s; security rules check whether API security definitions are correctly defined and placed. For editor feedback, its VS Code extension detects and lints OpenAPI or AsyncAPI YAML and JSON files. An official GitHub Action supports CI/CD workflows and custom ruleset paths, while JUnit XML output can be used for CI reporting. By default, only error-severity violations create test failures in that output. Installation routes include Homebrew, NPM, Yarn, a shell installer, Docker and source checkout. The project is actively supported, and company sponsors can receive priority issue support.

Who it suits

vacuum suits developers and teams maintaining OpenAPI, AsyncAPI or JSON Schema specifications who want local lint feedback, reusable reports or CI output. It also fits organizations with existing Spectral rulesets, and developers who want to use the tool as a library or through its VS Code extension.

What it does well

  • Free and open source.
  • Accepts YAML and JSON across supported specification formats.
  • Provides offline HTML reports and sealed reports for later rendering.
  • VS Code extension lints detected OpenAPI and AsyncAPI files.
  • Official GitHub Action accepts a custom ruleset path.
  • JUnit XML output supports CI reporting.

What to know first

  • AsyncAPI 2.x documents are rejected.
  • The VS Code extension is limited to OpenAPI or AsyncAPI YAML and JSON files.

Getting started

  1. Visit https://quobix.com/vacuum/ for the project and installation guidance.
  2. Choose an installation route: Homebrew, NPM, Yarn, shell installer, Docker or source checkout.
  3. On macOS, the maker recommends the Homebrew cask for its signed official release binary.
  4. Install the VS Code extension through the Visual Studio Code Marketplace or Open VSX for editor linting.
  5. Add the official GitHub Action to a GitHub CI/CD workflow and provide a custom ruleset path if needed.

Verdict

Choose vacuum if you need a free, open-source linter with CLI, library, editor and CI options for supported API specifications. Look elsewhere if your specifications use AsyncAPI 2.x, which vacuum rejects.

Questions

How much does vacuum cost?

It is free and open source.

Which specification formats does it support?

It accepts YAML and JSON and supports OpenAPI 2 and 3+, AsyncAPI 3 and JSON Schema. AsyncAPI 2.x documents are rejected.

Can I use Spectral rulesets?

Yes. vacuum supports Spectral rulesets, and the maker describes its own ruleset as a superset of Spectral’s.

Does it work with Visual Studio Code?

Yes. The extension is available in the Visual Studio Code Marketplace and Open VSX, and automatically lints detected OpenAPI or AsyncAPI YAML and JSON files.

Can it be used in CI?

An official GitHub Action adds vacuum to GitHub CI/CD workflows and accepts a custom ruleset path. It can also output JUnit XML; by default, only error-severity violations create test failures in that output.

Who makes vacuum?

The author identifies himself as Dave Shanley, uses the handle quobix and says he founded Princess Beef Heavy Industries.

Facts from vacuum's own pages

AsyncAPI limit
Vacuum supports AsyncAPI 3 documents, while AsyncAPI 2.x documents are rejected. · quobix.com, 9 Oct 2026
CI integration
An official GitHub Action is available for adding vacuum to GitHub CI/CD workflows. · quobix.com, 4 Oct 2026
CI reporting
Vacuum can output JUnit XML, and by default only error severity violations create test failures in that output. · quobix.com, 9 Oct 2026
Distribution
The maker documents installation via Homebrew, NPM, Yarn, a shell installer, Docker and source checkout. · quobix.com, 4 Oct 2026
Editor integration
The VSCode extension is listed in the Visual Studio Code Marketplace and Open VSX, and automatically detects and lints OpenAPI or AsyncAPI YAML and JSON files. · quobix.com, 4 Oct 2026
Formats
Vacuum accepts YAML and JSON and supports OpenAPI 2 and 3+, AsyncAPI 3 and JSON Schema documents. · github.com, 4 Oct 2026
GitHub Actions
The official GitHub Action adds vacuum to GitHub CI/CD workflows and accepts a custom ruleset path. · quobix.com, 9 Oct 2026
How it runs
Vacuum is designed as a CLI with a UI and as a library for use in other applications. · quobix.com, 9 Oct 2026
Implementation
Vacuum is written in Go, is multi-threaded and is designed as both a CLI and a library. · quobix.com, 4 Oct 2026
Install options
The maker documents installation through Homebrew, NPM, yarn, a shell installer, Docker, or building from source. · quobix.com, 9 Oct 2026
Maker
The author page identifies the maker by the handle quobix and says the author's real name is Dave Shanley. · quobix.com, 9 Oct 2026
Maker identity
The author identifies himself as Dave Shanley, uses the handle quobix and says he founded Princess Beef Heavy Industries. · quobix.com, 4 Oct 2026
Offline reports
The generated HTML report has no external dependencies and runs offline. · github.com, 4 Oct 2026
Performance
The maker says vacuum is written in Go, is multithreaded, and uses an index for complex rules. · quobix.com, 9 Oct 2026
Purpose
Vacuum is a deterministic linter and quality checking tool for OpenAPI, AsyncAPI, and JSON Schema specifications. · quobix.com, 9 Oct 2026
Reports
The report command saves lint results as replayable data that can be rendered again without changing the original results. · quobix.com, 9 Oct 2026
Rules
The maker says vacuum accepts Spectral rulesets and that its ruleset is a superset of Spectral’s. · quobix.com, 9 Oct 2026
Rulesets
Vacuum supports Spectral rulesets, and the maker describes its ruleset as a superset of Spectral’s. · quobix.com, 4 Oct 2026
Scale
The maker says vacuum is designed to lint very large specifications and work at scale. · quobix.com, 4 Oct 2026
Security checks
Its security rules check whether API security definitions are correctly defined and placed. · quobix.com, 4 Oct 2026
Security control
The lint command exposes options to allow private or local network access for fetch requests and to allow HTTP URLs in custom JavaScript functions. · quobix.com, 9 Oct 2026
Signed macOS release
The maker recommends the Homebrew cask on macOS for the official release binary signed by Quobix. · quobix.com, 9 Oct 2026
Sponsor note
The FAQ invites sponsorship and says company sponsors can receive priority support for issues. · quobix.com, 4 Oct 2026
Support
The FAQ says vacuum is actively supported and that companies sponsoring the project can receive priority support for issues. · quobix.com, 9 Oct 2026

Where vacuum stands on Freedom251

Look at these too