sqlfmt vs SQLint
sqlfmt
github.comSQLint
github.comSide by side
| Figure | sqlfmt | SQLint |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | — |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | Yes | — |
| Plans published | 1 | 1 |
| Spec score · SQL Linters and Formatters | 8.5 (#3) | 7.3 (#21) |
| License | sqlfmt is distributed under the PostgreSQL Licence. | The repository and PyPI list the MIT license. |
| Purpose | sqlfmt is a gofmt-style command-line formatter for PostgreSQL SQL. | SQLint is a SQL parser and linter for Standard SQL (BigQuery). |
Plans
In their own words
sqlfmt
sqlfmt is a free formatter for PostgreSQL SQL, available as a command-line tool and as a browser formatter running through WebAssembly. Its river-aligned style pads clause keywords so they share a column. The CLI reads SQL from files or stdin and writes formatted SQL to stdout; it can also rewrite files in place, list files needing changes, and show unified diffs. Its explain subcommand formats PostgreSQL plan text and can provide advice, canonicalized output, or structural comparisons. Plan advice describes join order, join and access methods, and parallelism, without costs, row estimates, or timing. The explain diff operation returns exit code 0 for structurally identical plans and 1 when structures differ, so it can be used in scripts and CI. A Go subpackage provides formatting for Go programs, and the project includes Emacs and Vim integrations. The browser build exposes formatting and version functions to JavaScript. Deeply nested subqueries and less common upsert or DDL forms remain best-effort areas. sqlfmt is intended for standalone formatting and SQL used in The Art of PostgreSQL book and courses.
SQLint
SQLint is a free, MIT-licensed Python parser and linter for Standard SQL (BigQuery), intended for developers on Linux. It checks indentation, repeated spaces and blank lines, keyword casing, comma placement, bracket spacing, operator spacing, and join formatting. The `-f` option formats SQL, and automatic fixes are supported. Command-line use and Python imports for `parse`, `check`, and `format` are documented. The project also describes a configuration file, CI/CD integration, and Docker instructions for building and running the tool. Installation uses `pip install sqlint` or a repository clone. PyPI lists version 0.2.4, released October 22, 2019, with a source distribution and a platform-independent `py3-none-any` wheel. The package is classified as Alpha, and no free trial is listed because the package itself is free. The repository provides an Issues tracker for questions and reports. The documented SQL dialect is Standard SQL (BigQuery), with no third-party integrations listed on the opened page.