sbdchd/squawk
🐘 Linter for Postgres migrations & SQL observed · 2026-09-03
Health v2 · maintenance only
96/100
- Activity 100
- Release rhythm 88
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 6
- age_days: 2279
- days_rel: 1
- days_push: 0
- n_releases_24m: 82
Adoption not part of the score
1166 stars · 70 forks observed · 2026-09-03
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Squawk is a linter for Postgres migrations and SQL that catches statements which could cause downtime, such as blocking locks or breaking schema changes. It ships as a CLI (npm, pip, binaries, Docker), a WASM playground, a VSCode extension with a language server, and GitHub Action/App integrations.
Use cases
- lint postgres migration files before deploying
- prevent downtime from ALTER TABLE statements that take exclusive locks
- check SQL for unsafe index creation without CONCURRENTLY
- enforce best practices like timestamptz and identity columns in schema
- add migration linting to pull requests via GitHub Actions
- lint SQL files in CI to catch risky schema changes
When to choose
- your team runs Postgres with SQL migration files and wants to avoid migration-caused outages
- you want automated review comments on schema changes in pull requests
- you need editor feedback on SQL migrations via VSCode or a language server
When to avoid
- you use a non-Postgres database whose locking behavior differs
- your migrations are generated by an ORM and you cannot act on raw SQL warnings
- you need a full SQL formatter or query optimizer rather than a safety linter
Facets
cli-tool · maturity active
linter developer-tools cli ci-cd databases developer-tools backend testing cli windows browser editor-plugin rust postgres sql migrations database-migrations schema-safety language-server github-action wasm linux macos docker
10 sources
- readme: https://github.com/sbdchd/squawk · fetched 2026-09-03 · 9407052ee513
- homepage: https://squawkhq.com · fetched 2026-08-29 · 7b6745813c83
- site_page: https://squawkhq.com/docs · fetched 2026-08-29 · 365e46927019
- site_page: https://squawkhq.com/docs/rules · fetched 2026-08-29 · 5749e3861768
- site_page: https://squawkhq.com/docs/github_app · fetched 2026-08-29 · dcf10cc2d000
- site_page: https://squawkhq.com/docs/ban-char-field · fetched 2026-08-29 · a8ff1cc5562f
- site_page: https://squawkhq.com/docs/prefer-bigint-over-int · fetched 2026-08-29 · f99d98f89348
- site_page: https://squawkhq.com/docs/prefer-bigint-over-smallint · fetched 2026-08-29 · 70fada2eeb32
- site_page: https://squawkhq.com/docs/prefer-identity · fetched 2026-08-29 · 404287e6d0bd
- site_page: https://squawkhq.com/docs/prefer-timestamptz · fetched 2026-08-29 · 0f74b4f68b19
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| sbdchd/squawk | main | 96 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem