Open-source linters, formatters and type checkers in 2026
42 open-source projects, ranked by GitHub stars and how recently each was worked on. Prettier leads with 52k stars, ahead of Ruff. 42 had code pushed in the last three months. Most common licenses: MIT (28), Apache-2.0 (6) and GPL-3.0 (3).
New open-source projects
-
1
renderlint ngocanhnckh
Lint the rendered UI: catches overflowing text, low contrast, overlaps, broken responsive layouts, emoji icons and more in any web framework. Built for AI coding agents.
Developer tool Experimental You let coding agents make UI changes and want an automated check that catches visual defects that type checks and ESLint miss.
★ 201 MIT JavaScript Active, pushed yesterday -
2
OpenQodex openqodex
Open source AI code review for coding agents. A separate reviewer checks every change your agent writes before you push, in Claude Code, Codex, Cursor and Cline. No account or key of its own.
Developer tool Experimental You write much of your code with a coding agent and want a second reviewer and security scanners to check each change.
★ 1.1k Apache-2.0 TypeScript Active, pushed yesterday -
3
Perch lakeday-org
Semantic code and security scanner
Developer tool Experimental You want semantic code review that goes beyond pattern-based linters and accept sending code to a hosted scanning service.
★ 326 MIT JavaScript Active, pushed yesterday -
4
Sloppy Heyosseus
Static analysis for the debt AI agents leave in PHP: 34 rules, Claude Code hooks, git-diff review, a Rector and Pint fix pass, Pest expectations, CI annotations and an MCP server. Deterministic, local, no LLM.
Developer tool Usable Your PHP or Laravel team lets AI coding agents write code and wants a deterministic check that runs after every agent edit.
★ 225 MIT PHP Active, pushed 3 days ago -
5
Procoder azrtydxb
Senior-developer discipline for AI coding agents. A commit gate that counts unchecked as failing, quality controllers that refuse to call unfinished work done, and a lessons loop that closes each escaped bug's class. One Go binary, no runtime deps, works with 20+ agents.
Developer tool Experimental You use several AI coding agents on the same repository and want one commit gate that all of them must pass.
★ 211 Apache-2.0 Go Active, pushed 10 days ago -
6
sloptrim seyedehsanhadi
A local detector for AI-writing patterns. Scores every prose file your agent saves. Python standard library only, no network, no model.
Developer tool Experimental You use Claude Code or Codex to draft documents and want an automatic check for stock AI phrasing before you read them.
★ 414 Apache-2.0 Python Active, pushed 14 days ago
Open-source linters, formatters and type checkers
Integrations 1
-
1
ALE dense-analysis
Check syntax in Vim/Neovim asynchronously and fix files, with Language Server Protocol (LSP) support
Integration Production-ready You use classic Vim and want linting, fixing and LSP features from one plugin with support for many existing tools.
★ 14k BSD-2-Clause Vim Script Active, pushed 16 days ago
Developer tools 41
-
1
Prettier prettier
Prettier is an opinionated code formatter.
Developer tool Production-ready A web team wants to stop arguing about formatting and use the formatter that nearly every editor and framework already supports.
★ 52k MIT JavaScript Active, pushed today
-
2
Ruff astral-sh
An extremely fast Python linter and code formatter, written in Rust.
Developer tool Production-ready You want to replace Flake8, isort and Black in a Python project with one tool that runs in a fraction of the time.
★ 50k MIT Rust Active, pushed today
-
3
Black psf
The uncompromising Python code formatter
Developer tool Production-ready A Python team wants formatting settled automatically and is not already using Ruff's compatible formatter.
★ 42k MIT Python Active, pushed yesterday
-
4
ShellCheck koalaman
ShellCheck, a static analysis tool for shell scripts
Developer tool Production-ready Your repositories contain shell scripts, especially in CI or deployment, and you want common mistakes caught before they run.
★ 40k GPL-3.0 Haskell Active, pushed today -
5
ESLint eslint
Find and fix problems in your JavaScript code.
Developer tool Production-ready You need the JavaScript linter with the largest rule and plugin ecosystem, including framework-specific rules for React, Vue and others.
★ 28k MIT JavaScript Active, pushed today
-
6
Biome biomejs
A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.
Developer tool Production-ready You want to replace ESLint plus Prettier in a web project with a single fast tool and can live with its built-in rule set.
★ 26k Apache-2.0 Rust Active, pushed today
-
7
Oxc oxc-project
⚓ A collection of high-performance JavaScript tools.
Developer tool Usable Linting is slow on a large JavaScript codebase and you want Oxlint alongside or instead of ESLint, or you build tooling that needs a fast parser.
★ 23k MIT Rust Active, pushed today
-
8
mypy python
Optional static typing for Python
Developer tool Production-ready A growing Python codebase uses type hints and you want the reference checker that most typing features land in first.
★ 21k See repository Python Active, pushed today
-
9
ty astral-sh
An extremely fast Python type checker and language server, written in Rust.
Developer tool Experimental Type checking a large Python codebase is too slow with mypy or Pyright and you can tolerate a beta tool.
★ 20k MIT Python Active, pushed today -
10
SwiftLint realm
A tool to enforce Swift style and conventions.
Developer tool Production-ready An iOS or macOS team wants consistent Swift style enforced in Xcode and CI.
★ 20k MIT Swift Active, pushed today -
11
Golangci-lint golangci
Fast linters runner for Go
Developer tool Production-ready A Go codebase needs a single lint step in CI that bundles staticcheck, govet, errcheck and many more.
★ 20k GPL-3.0 Go Active, pushed today -
12
Ast-grep ast-grep
⚡A CLI tool for code structural search, lint and rewriting. Written in Rust
Developer tool Usable You need codemods or custom lint rules across a large codebase where text-based grep and regex replacements are too error-prone.
★ 16k MIT Rust Active, pushed today -
13
Pyright microsoft
Static Type Checker for Python
Developer tool Production-ready You want a fast, strict and spec-complete type checker for Python, especially in VS Code.
★ 16k See repository Python Active, pushed today -
14
Pre-commit pre-commit
A framework for managing and maintaining multi-language pre-commit hooks.
Developer tool Production-ready A repository mixes languages and you want the same formatters and linters run on every commit and in CI from one config.
★ 16k MIT Python Active, pushed yesterday -
15
Lint-staged lint-staged
🚫💩 — Run tasks like formatters and linters against files staged in Git
Developer tool Production-ready A JavaScript project wants fast pre-commit checks that touch only changed files rather than the whole repository.
★ 15k MIT JavaScript Active, pushed 5 days ago -
16
RuboCop rubocop
A Ruby static code analyzer and formatter, based on the community Ruby style guide.
Developer tool Production-ready A Ruby or Rails team wants consistent style checked in editors and CI, with extensions for Rails, RSpec and performance.
★ 13k MIT Ruby Active, pushed today -
17
Knip webpro-nl
✂️ Find unused files, dependencies and exports in your JavaScript and TypeScript projects. Knip it before you ship it!
Developer tool Production-ready A JavaScript or TypeScript codebase or monorepo has accumulated dead code and stale packages you want to remove safely.
★ 13k ISC TypeScript Active, pushed today -
18
Hadolint hadolint
Dockerfile linter, validate inline bash, written in Haskell
Developer tool Production-ready Your team writes Dockerfiles and wants common image-building mistakes caught in CI.
★ 13k GPL-3.0 Haskell Active, pushed 17 days ago -
19
Stylelint stylelint
A mighty CSS linter that helps you avoid errors and enforce conventions.
Developer tool Production-ready A front-end codebase has substantial hand-written CSS, SCSS or CSS-in-JS and you want conventions enforced.
★ 12k MIT JavaScript Active, pushed yesterday -
20
Super-Linter super-linter
Combination of multiple linters to run as a GitHub Action or standalone
Developer tool Production-ready You want one drop-in CI step that lints a polyglot repository without configuring each linter yourself.
★ 11k MIT Shell Active, pushed today -
21
Reviewdog reviewdog
🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
Developer tool Production-ready You want lint results shown inline on pull requests, and only for new code, without failing builds on old issues.
★ 9.7k MIT Go Active, pushed yesterday -
22
Bandit PyCQA
Bandit is a tool designed to find common security issues in Python code.
Developer tool Production-ready You want a free security lint step for Python code in CI.
★ 8.4k Apache-2.0 Python Active, pushed 3 days ago -
23
XO xojs
❤️ JavaScript/TypeScript linter (ESLint wrapper) with great defaults
Developer tool Production-ready You want an opinionated lint setup with no decisions to make, as in many of Sindre Sorhus's packages.
★ 8k MIT TypeScript Active, pushed 2 months ago -
24
Pyrefly meta
A fast type checker and language server for Python
Developer tool Usable You want a fast type checker and editor language server for a large Python codebase, backed by a large company that runs it internally.
★ 7.2k MIT Rust Active, pushed today
-
25
Detekt detekt
Static code analysis for Kotlin
Developer tool Production-ready A Kotlin or Android team wants code-quality checks beyond formatting, with a baseline to ignore existing issues.
★ 7.1k Apache-2.0 Kotlin Active, pushed today -
26
isort PyCQA
A Python utility / library to sort imports.
Developer tool Production-ready A Python project wants consistent import ordering and is not already using Ruff, which includes the same rules.
★ 7k MIT Python Active, pushed 4 days ago -
27
Staticcheck dominikh
Staticcheck - The advanced Go linter
Developer tool Production-ready You write Go and want the most respected standalone linter, either directly or through golangci-lint.
★ 6.9k MIT Go Active, pushed 12 days ago -
28
Ktlint ktlint
An anti-bikeshedding Kotlin linter with built-in formatter
Developer tool Production-ready A Kotlin team wants formatting settled automatically in the style of gofmt, in Gradle builds or pre-commit hooks.
★ 6.8k MIT Kotlin Active, pushed today -
29
Flake8 PyCQA
flake8 is a python tool that glues together pycodestyle, pyflakes, mccabe, and third-party plugins to check the style and quality of some python code.
Developer tool Production-ready An existing Python project relies on specific Flake8 plugins that Ruff does not replicate.
★ 3.8k See repository Python Active, pushed yesterday -
30
droast immanuwell
droast - a dockerfile linter that actually has opinions 🔥
Developer tool Usable You want Dockerfile checks in the editor and in CI, and prefer direct messages over polite ones.
★ 1.1k MIT Rust Active, pushed 2 months ago -
31
OpenQodex openqodex
Open source AI code review for coding agents. A separate reviewer checks every change your agent writes before you push, in Claude Code, Codex, Cursor and Cline. No account or key of its own.
Developer tool Experimental You write much of your code with a coding agent and want a second reviewer and security scanners to check each change.
★ 1.1k Apache-2.0 TypeScript Active, pushed yesterday -
32
aislop scanaislop
Catch and fix the code-quality issues AI coding agents leave behind - dead code, unsafe casts, swallowed errors, duplication, security risks, and more. 50+ deterministic rules across 10 language targets, with CLI, CI, and GitHub Actions. No LLM at runtime. MIT.
Developer tool Usable A large share of your code is written by coding agents and you want a repeatable quality gate that uses no model at run time.
★ 726 MIT TypeScript Active, pushed today -
33
sloptrim seyedehsanhadi
A local detector for AI-writing patterns. Scores every prose file your agent saves. Python standard library only, no network, no model.
Developer tool Experimental You use Claude Code or Codex to draft documents and want an automatic check for stock AI phrasing before you read them.
★ 414 Apache-2.0 Python Active, pushed 14 days ago -
34
ttsc samchon
A typescript-go toolchain, with evidence graph
Developer tool Experimental You use TypeScript and want compiler-level plugins and type-checked execution on the new native compiler.
★ 364 MIT TypeScript Active, pushed yesterday -
35
slopless berelevant-ai
Deterministic textlint rules and CLI for catching prose slop in English Markdown.
Developer tool Usable You publish Markdown documentation or posts and want a deterministic check on the style of prose, including text drafted by AI.
★ 339 MIT TypeScript Active, pushed yesterday -
36
Perch lakeday-org
Semantic code and security scanner
Developer tool Experimental You want semantic code review that goes beyond pattern-based linters and accept sending code to a hosted scanning service.
★ 326 MIT JavaScript Active, pushed yesterday -
37
foxguard 0sec-labs
A fast universal code security scanner, written in Rust. Batteries included: supports 14 languages, TUI for triage, secrets, post-quantum audits, diff-aware scans and more 𓃥
Developer tool Usable You want a fast local or CI static-analysis scan across several languages and already have Semgrep-style rules you want to reuse.
★ 308 MIT Rust Active, pushed 2 days ago -
38
Habit Hooks habit-hooks
Automated quality checks that nudge AI coding agents toward better habits
Developer tool Usable Your coding agents keep satisfying linter numbers without really improving the code, and you want guidance in place of raw scores.
★ 250 MIT Python Active, pushed 34 days ago -
39
Sloppy Heyosseus
Static analysis for the debt AI agents leave in PHP: 34 rules, Claude Code hooks, git-diff review, a Rector and Pint fix pass, Pest expectations, CI annotations and an MCP server. Deterministic, local, no LLM.
Developer tool Usable Your PHP or Laravel team lets AI coding agents write code and wants a deterministic check that runs after every agent edit.
★ 225 MIT PHP Active, pushed 3 days ago -
40
Procoder azrtydxb
Senior-developer discipline for AI coding agents. A commit gate that counts unchecked as failing, quality controllers that refuse to call unfinished work done, and a lessons loop that closes each escaped bug's class. One Go binary, no runtime deps, works with 20+ agents.
Developer tool Experimental You use several AI coding agents on the same repository and want one commit gate that all of them must pass.
★ 211 Apache-2.0 Go Active, pushed 10 days ago -
41
renderlint ngocanhnckh
Lint the rendered UI: catches overflowing text, low contrast, overlaps, broken responsive layouts, emoji icons and more in any web framework. Built for AI coding agents.
Developer tool Experimental You let coding agents make UI changes and want an automated check that catches visual defects that type checks and ESLint miss.
★ 201 MIT JavaScript Active, pushed yesterday
Open-source licenses
- Permissive: 36. Use it anywhere, including in closed products. You keep the copyright notice; Apache-2.0 also grants patent rights.
- Strong copyleft: 3. If you distribute the program or anything built on it, you must release the whole source under the same license.
Languages
Python 10, Rust 7, JavaScript 6, TypeScript 6, Go 4, Haskell 2, Kotlin 2, Swift 1, Vim Script 1, Ruby 1, Shell 1 and PHP 1.
Made software that belongs here? Add it. Listing is free.