InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →
Top 23 Linter Open-Source Projects
-
Project mention: Python MCP Remote Server — The Dawn of the Streamable HTTP Era ~ With a Minimalist Template Featuring uv / Docker / pytest ~ | dev.to | 2025-05-11
Ruff: A Rust-based, ultra-fast Python linter and formatter developed by Astral (official website). What's astounding is not just its speed, but its ability to cover most of the checks and formatting previously done by multiple tools like Flake8, isort, pydocstyle, pyupgrade, etc., with Ruff alone. This simplifies configuration files and significantly reduces tool management costs. Ruff hooks are defined in .pre-commit-config.yaml. When you try to commit, static code analysis (detecting potential bugs or deprecated practices) and formatting (unifying coding style) are automatically executed. If issues are found, the commit is aborted, prompting you to fix them. In many cases, Ruff can automatically fix the problems it finds.
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
-
Project mention: Step-by-Step Guide to Front-end Engineering — A Comprehensive Tutorial | dev.to | 2025-04-02
standard (24.5k stars) Chinese version
-
While ESLint is the go-to tool for code quality in JavaScript, it doesn’t provide any built-in rule for this.
-
Project mention: Ty: An fast Python type checker and language server, written in Rust | news.ycombinator.com | 2025-05-07
https://github.com/python/mypy/blob/501a07b45af8e44eda665e53...
Also did you know mypy ignores typing of class decorators? You simply can't return a different type other than type[thisclass].
-
if [[ "$(uname -m)" == arm64 ]]; then export PATH="/opt/homebrew/bin:$PATH" fi if which swiftlint > /dev/null; then swiftlint --fix && swiftlint else echo "warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint" fi
-
biome
A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.
biome is a replacement for both ESlint and prettier. It's a pretty cool project but I've already spent considerable time setting up my ESlint so this is not a realistic option.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
Consider using golangci-lint for comprehensive linting
-
The React team is also collaborating with the oxc team to eventually add native support for the compiler. Once Rolldown, a Rust-based bundler for JavaScript and TypeScript, is released and supported in Vite, developers should be able to integrate the compiler without relying on Babel.
-
To lint staged files we’re going to use the lint-staged package: it’s easy to configure and supports different configurations per each project.
-
static-analysis
⚙️ A curated list of static analysis (SAST) tools and linters for all programming languages, config files, build tools, and more. The focus is on tools which improve code quality.
-
The time he hardcoded a token into the repo? → That’s when we finally added Git hooks and implemented secret scanning.
-
ale
Check syntax in Vim/Neovim asynchronously and fix files, with Language Server Protocol (LSP) support
-
If you're looking for static typing a dynamic language is going to be a poor fit. I find a place for both. I love Rust, but trying to write a tool that consumed a GraphQL API with was a brutal exercise in frustation. I'd say that goes for typing of JSON or YAML or whatever structured format in general. It's refreshing being able to just work with data in the form I already know it's in. Ruby can be an incredibly productive language to work with.
If you're looking for static analysis in general, please note that there are mature tools available. Rubocop¹ is probably the most popular and allows for linting and code formatting. Brakeman² is a vulnerability scanner for Rails. Sorbet³ is a static type checker.
The tooling is there if you want to try things out. But, if you want a statically typed language then that's a debate that's been going since the dawn of programming language design. I doubt it's going to get resolved in this thread.
¹ - https://github.com/rubocop/rubocop
² - https://brakemanscanner.org/
³ - https://sorbet.org/
-
-
Project mention: Stop shipping insecure Dockerfiles: real devs don’t run as root | dev.to | 2025-05-03
Hadolint Dockerfile Linter
-
super-linter
Combination of multiple linters to run as a GitHub Action or standalone (by super-linter)
-
The amazing ast-grep tool does not support vue and scss by default but can be configured to do so.
-
reviewdog
🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
Project mention: Supply Chain Attack on Reviewdog GitHub Actions | news.ycombinator.com | 2025-03-20 -
-
Bandit Documentation: https://bandit.readthedocs.io OWASP Source Code Analysis Tools: https://owasp.org/www-community/Source_Code_Analysis_Tools Python Security Best Practices: https://docs.python.org/3/library/security.html GitHub Actions: https://docs.github.com/en/actions
-
-
Use black and isort for formatting.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Linter discussion
Linter related posts
-
How one bad coder made our stack unbreakable
-
Golang Project Level 0
-
Clean Code Principles & Code Conventions for React + TypeScript
-
Python MCP Remote Server — The Dawn of the Streamable HTTP Era ~ With a Minimalist Template Featuring uv / Docker / pytest ~
-
Ty: An fast Python type checker and language server, written in Rust
-
From Vibe Coder to AI-Assisted Architect
-
Ty: Astral's New Type Checker (Formerly Red-Knot) – Talk Python Live Stream [video]
-
A note from our sponsor - InfluxDB
www.influxdata.com | 24 May 2025
Index
What are some of the best open-source Linter projects? This list will help you:
# | Project | Stars |
---|---|---|
1 | ruff | 39,245 |
2 | ShellCheck | 37,420 |
3 | Standard | 29,313 |
4 | ESLint | 25,941 |
5 | mypy | 19,321 |
6 | SwiftLint | 18,996 |
7 | biome | 18,951 |
8 | golangci-lint | 17,044 |
9 | oxc | 14,502 |
10 | lint-staged | 13,868 |
11 | static-analysis | 13,808 |
12 | pre-commit | 13,793 |
13 | ale | 13,757 |
14 | rubocop | 12,738 |
15 | stylelint | 11,252 |
16 | hadolint | 10,941 |
17 | super-linter | 9,839 |
18 | ast-grep | 8,684 |
19 | reviewdog | 8,407 |
20 | XO | 7,779 |
21 | bandit | 6,983 |
22 | tfsec | 6,821 |
23 | isort | 6,730 |