FREEDOM251

Freedom251 › SQL Linters and Formatters

Squawk

Free plan AndroidAPIExtensioniPhoneLinuxMac+3

Visit Squawk Alternatives

Squawk's own site

What Squawk is

Squawk is a linter and language server for PostgreSQL migrations and SQL. It checks schema changes for potential risks to database reads and writes, flagging unsafe statements, incompatible changes, and migration patterns that may block access. Its messages include examples and reasoning to help developers understand the issue. Use the CLI to lint SQL files, or bring checks into an editor with the language server and VS Code extension. Squawk can also lint modified migrations in GitHub pull requests through a GitHub Action and can comment on pull requests using its upload-to-github command or GitHub App. It can run in other CI setups, with the documentation describing a GitHub App configuration for cases such as CircleCI. Installation options include npm, PyPI, release binaries, Docker, VS Code, and a browser playground that runs a WebAssembly build. Configuration covers PostgreSQL version, included or excluded rules and paths, and transaction assumptions; some rules need to be enabled explicitly. Squawk is free and open source, and supports PostgreSQL only.

Who it suits

Squawk suits developers maintaining PostgreSQL schema changes who want migration checks locally, in an editor, or in pull request workflows. It is also relevant to teams using GitHub or other CI systems.

What it does well

  • Free and open source.
  • Linting available in the CLI and VS Code.
  • GitHub Action can check modified migrations.
  • Configuration can include or exclude rules and paths.
  • Browser playground lints SQL using WebAssembly.

What to know first

  • Supports PostgreSQL only.
  • No automatic fixes or custom rules.
  • Some rules must be enabled explicitly.
  • GitHub App needs Pull Requests write permission to comment.

Limits

Squawk handles PostgreSQL only and does not provide automatic fixes or custom rules. Rules that are disabled by default must be enabled through configuration or an include option.

Getting started

  1. Open the Squawk website
  2. Install it through npm, PyPI, a release binary, Docker, VS Code, or the browser playground
  3. Configure PostgreSQL version, included or excluded rules, paths, and transaction assumptions
  4. Run the CLI or language server against PostgreSQL SQL and migrations
  5. Add the GitHub Action for pull-request linting
  6. Set up the GitHub App or upload-to-github command for pull-request comments

Verdict

Squawk offers PostgreSQL-focused migration linting across local, editor, and pull request workflows. Teams should note its limited dialect scope and the need to enable some rules themselves.

Questions

Is Squawk free?

Yes. It is open source and listed as free, with no paid plans described.

Which database language does it support?

Squawk supports PostgreSQL migrations and SQL.

Can it run in a code editor?

Yes. It provides a language server and a VS Code extension.

Can Squawk comment on pull requests?

Yes. GitHub Actions, the upload-to-github command, or a GitHub App can add comments; the App needs Pull Requests write permission.

Can rules be customized?

Rules can be included or excluded, and paths, PostgreSQL version, and transaction assumptions can be configured. Custom rules are not supported.

How can it be installed?

The project documents npm, PyPI, direct release binaries, Docker, VS Code, and a browser playground.

Facts from Squawk's own pages

Audience
Squawk is aimed at developers working with Postgres schema changes who want to lint migrations locally, in an editor, or in pull request workflows. · squawkhq.com, 4 Oct 2026
Browser playground
A WASM powered playground lets users lint SQL locally in a browser. · squawkhq.com, 4 Oct 2026
CLI
The CLI can lint SQL files and supports configuration for excluding rules and paths. · squawkhq.com, 4 Oct 2026
Downtime prevention
It checks schema changes for risks that can block database reads or writes. · squawkhq.com, 3 Oct 2026
Editor support
Squawk provides a language server and VSCode extension for editor linting. · squawkhq.com, 4 Oct 2026
GitHub App permissions
The GitHub App setup guide specifies Pull Requests write permission so Squawk can comment on pull requests. · squawkhq.com, 3 Oct 2026
GitHub comments
Squawk can comment on GitHub pull requests through its upload-to-github command or a GitHub App. · squawkhq.com, 3 Oct 2026
GitHub integration
Squawk can comment on GitHub pull requests through a GitHub Action or its upload-to-github command. · squawkhq.com, 4 Oct 2026
Install methods
The docs list npm, pip, direct release binaries, Docker, the browser playground, and VSCode as ways to use Squawk. · squawkhq.com, 4 Oct 2026
Migration guidance
Its rules flag schema mistakes, incompatible changes, and migration patterns that can block reads or writes. · squawkhq.com, 3 Oct 2026
Opt-in rules
Some rules are disabled by default and must be enabled with an include option or configuration setting. · squawkhq.com, 3 Oct 2026
Other CI
The docs describe configuring Squawk as a GitHub App for use outside GitHub Actions, including CircleCI. · squawkhq.com, 4 Oct 2026
Platform binaries
The releases page lists macOS (darwin) and Linux binaries as well as VS Code extension packages. · github.com, 3 Oct 2026
Postgres focus
The product is specifically a linter for Postgres migrations and SQL. · squawkhq.com, 4 Oct 2026
Pricing
The pages opened provide no pricing or paid plans. · squawkhq.com, 4 Oct 2026
Product
Squawk is a linter and language server for Postgres migrations and SQL. · squawkhq.com, 4 Oct 2026
Pull request integration
The GitHub Action can lint modified SQL migrations on pull requests. · squawkhq.com, 3 Oct 2026
Purpose
It checks schema changes to help prevent blocking reads or writes and breaking existing clients. · squawkhq.com, 4 Oct 2026
Rule configuration
Users can include or exclude rules, set a PostgreSQL version, and configure whether SQL files are assumed to run in transactions. · squawkhq.com, 3 Oct 2026
Rules
Its rules flag potentially unsafe migration statements and provide actionable messages with examples and reasoning. · squawkhq.com, 4 Oct 2026
Security and compliance
The pages opened provide no security or compliance commitments. · squawkhq.com, 4 Oct 2026
Support
The site links to GitHub Help and directs users to open an issue if a rule, message, or documentation page needs improvement. · squawkhq.com, 4 Oct 2026
Support route
The website links to GitHub Help for support. · squawkhq.com, 3 Oct 2026
Ways to install
The project documents installation through npm, PyPI, direct release binaries, Docker, a browser playground, and VS Code. · squawkhq.com, 3 Oct 2026

Where Squawk stands on Freedom251

Look at these too