Linter

Top 23 Linter Open-Source Projects

  • ShellCheck

    ShellCheck, a static analysis tool for shell scripts

  • Project mention: Amber – the programming language compiled to Bash | news.ycombinator.com | 2024-05-21

    As carlinigraphy points out, shellcheck [0] exists, and can easily be put into pre-commits, a CI pipeline, etc. This would have almost certainly flagged your problem immediately.

    > I would be willing to learn a sane language, but bash isn't one.

    It's a general language that has to be both an interactive interpreter and script executor, and it needs to support a huge variety of architectures and kernel versions, as well as historical decisions. It's going to have some cruft.

    [0]: https://www.shellcheck.net/

  • Standard

    🌟 JavaScript Style Guide, with linter & automatic code fixer

  • Project mention: Mastering Code Quality: Setting Up ESLint with Standard JS in TypeScript Projects | dev.to | 2024-05-05

    Sorry, I've gone too far. I'm not here to persuade you to use Standard JS. My intention is to provide information and guidance on configuring JavaScript Standard Style for your team, should you agree with me or have other reasons to choose it.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • ruff

    An extremely fast Python linter and code formatter, written in Rust.

  • Project mention: Ruff: The Extensible Python Linter | dev.to | 2024-05-07

    Ruff is an open-source Python linter created by Astral Sh that stands out for its impressive speed, adaptability, and wide-ranging features.

  • ESLint

    Find and fix problems in your JavaScript code.

  • Project mention: Rustify your JavaScript tooling | dev.to | 2024-05-21

    A big part of my work revolves around JavaScript tooling, and as such it's important to keep an eye on the ecosystem and see where things are going. It's no secret that recently lots of projects are native-ying (??) parts of their codebase, or even rewriting them to native languages altogether. Esbuild is one of the first popular and successful examples of this, which was written in Go. Other examples are Rspack and Turbopack, which are both Rust-based alternatives to Webpack, powered by SWC ("Speedy Web Compiler"). There's also Rolldown, a Rust-based alternative to Rollup powered by OXC ("The JavaScript Oxidation Compiler"), but Rollup itself is also native-ying (??) parts of their codebase and recently started using SWC for parts of their codebase. And finally, there are Oxlint (powered by OXC) and Biome as Rust-based alternatives for Eslint and Prettier respectively.

  • SwiftLint

    A tool to enforce Swift style and conventions.

  • Project mention: A problem when adding Swiftlint as a dependency on my won package? | /r/swift | 2023-10-27
  • mypy

    Optional static typing for Python

  • Project mention: Dagger.io : La nouvelle Γ¨re du CI/CD dans le monde DevOps | dev.to | 2024-05-14
  • golangci-lint

    Fast linters runner for Go

  • Project mention: makefile para projetos em Go | dev.to | 2024-02-19
  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • ale

    Check syntax in Vim/Neovim asynchronously and fix files, with Language Server Protocol (LSP) support

  • Project mention: A decent VS Code and Ruby on Rails setup | news.ycombinator.com | 2024-02-21

    I saw no mention of RBS+Steep, the latter providing a LSP. I use it a lot and very much like it, although it's still young and needs love, but it's making good, steady progress! I've been very pleasantly surprised by some of the crazy things Steep can catch, completely statically!

    You appear to be working on projects with Sorbet (which I tried to like but found it fell short in practice, notably outside of the app use case i.e it's mostly useless for gems) so it may be a tall order to try on those. Maybe you can give RBS+Steep a shot on some small project?

    RBS: https://github.com/ruby/rbs

    RBS collection (for those gems that don't ship RBS signatures in `sig`, integrates with bundler): https://github.com/ruby/gem_rbs_collection

    Steep: https://github.com/soutaro/steep

    VS Code: https://github.com/soutaro/steep-vscode

    Sublime Text: https://github.com/sublimelsp/LSP

    Vim (I'm working on it): https://github.com/dense-analysis/ale/pull/4671

  • 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.

  • Project mention: Static Analysis Tools for C | news.ycombinator.com | 2023-10-26

    Readers should also peruse the 'Multiple languages' section, many of the big names, Coverity, Klocwork et al. are listed there.

    see https://github.com/analysis-tools-dev/static-analysis#multip...

  • lint-staged

    πŸš«πŸ’© β€” Run linters on git staged files

  • Project mention: Supercharge your workflow with Husky, Lint Staged and Commitlint | dev.to | 2024-05-07

    Lint Staged: https://github.com/lint-staged/lint-staged

  • rubocop

    A Ruby static code analyzer and formatter, based on the community Ruby style guide.

  • Project mention: Utilities for refactoring and upgrading Ruby code based on ASTs | news.ycombinator.com | 2024-05-06

    https://github.com/rubocop/rubocop/issues/8091#issuecomment-...

    perhaps they are biased against the tool from participating in a campaign to police the name in the past.

  • pre-commit

    A framework for managing and maintaining multi-language pre-commit hooks.

  • Project mention: How to setup Black and pre-commit in python for auto text-formatting on commit | dev.to | 2024-03-29

    Today we are going to look at how to setup Black (a python code formatter) and pre-commit (a package for handling git hooks in python) to automatically format you code on commit.

  • stylelint

    A mighty CSS linter that helps you avoid errors and enforce conventions.

  • Project mention: Streamline Your Workflow: A Guide to Normalising Git Commit and Push Processes | dev.to | 2024-05-05

    There are more linting tools that I won't go into deeply, but you can integrate them with lint-staged. For example, you can lint your CSS content with Stylelint, or even lint your README files with markdownlint, etc.

  • biome

    A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.

  • Project mention: Rustify your JavaScript tooling | dev.to | 2024-05-21

    A big part of my work revolves around JavaScript tooling, and as such it's important to keep an eye on the ecosystem and see where things are going. It's no secret that recently lots of projects are native-ying (??) parts of their codebase, or even rewriting them to native languages altogether. Esbuild is one of the first popular and successful examples of this, which was written in Go. Other examples are Rspack and Turbopack, which are both Rust-based alternatives to Webpack, powered by SWC ("Speedy Web Compiler"). There's also Rolldown, a Rust-based alternative to Rollup powered by OXC ("The JavaScript Oxidation Compiler"), but Rollup itself is also native-ying (??) parts of their codebase and recently started using SWC for parts of their codebase. And finally, there are Oxlint (powered by OXC) and Biome as Rust-based alternatives for Eslint and Prettier respectively.

  • hadolint

    Dockerfile linter, validate inline bash, written in Haskell

  • Project mention: Cloud Security and Resilience: DevSecOps Tools and Practices | dev.to | 2024-05-01

    3. Hadolint: https://github.com/hadolint/hadolint Hadolint is a Dockerfile linter that helps you build best practice Docker images, reducing vulnerabilities in your container configurations.

  • super-linter

    Combination of multiple linters to run as a GitHub Action or standalone (by super-linter)

  • Project mention: Hashnode Blog GitHub Action - fetch and display the latest blogs in a nice format | dev.to | 2024-02-03
  • oxc

    βš“ A collection of JavaScript tools written in Rust.

  • Project mention: Rustify your JavaScript tooling | dev.to | 2024-05-21

    A big part of my work revolves around JavaScript tooling, and as such it's important to keep an eye on the ecosystem and see where things are going. It's no secret that recently lots of projects are native-ying (??) parts of their codebase, or even rewriting them to native languages altogether. Esbuild is one of the first popular and successful examples of this, which was written in Go. Other examples are Rspack and Turbopack, which are both Rust-based alternatives to Webpack, powered by SWC ("Speedy Web Compiler"). There's also Rolldown, a Rust-based alternative to Rollup powered by OXC ("The JavaScript Oxidation Compiler"), but Rollup itself is also native-ying (??) parts of their codebase and recently started using SWC for parts of their codebase. And finally, there are Oxlint (powered by OXC) and Biome as Rust-based alternatives for Eslint and Prettier respectively.

  • XO

    ❀️ JavaScript/TypeScript linter (ESLint wrapper) with great defaults

  • Project mention: Mastering Code Quality: Setting Up ESLint with Standard JS in TypeScript Projects | dev.to | 2024-05-05

    You may be torn between those famous code styles, struggling to choose one between Airbnb JavaScript Style, Google JavaScript Style Guide, JavaScript Standard Style, or XO, among others.

  • reviewdog

    🐢 Automated code review tool integrated with any code analysis tools regardless of programming language

  • tfsec

    Security scanner for your Terraform code

  • Project mention: Cloud Security and Resilience: DevSecOps Tools and Practices | dev.to | 2024-05-01

    3. tfsec: https://github.com/aquasecurity/tfsec tfsec uses a suite of security checks to scan your Terraform templates, helping to identify potential security issues before infrastructure is deployed.

  • isort

    A Python utility / library to sort imports.

  • Project mention: Enhance Your Project Quality with These Top Python Libraries | dev.to | 2024-03-18

    isort: This library sorts your imports alphabetically, and automatically separates them into sections and by type. It provides a cleaner and more organised way to manage project imports.

  • detekt

    Static code analysis for Kotlin

  • bandit

    Bandit is a tool designed to find common security issues in Python code.

  • Project mention: Enhance Your Project Quality with These Top Python Libraries | dev.to | 2024-03-18

    Bandit is a tool designed to find common security issues in Python code. It was developed by the OpenStack Security Project and is a great addition to any serious Python project.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Linter related posts

  • ast-grep got 6000 stars!

    2 projects | dev.to | 18 May 2024
  • Dagger.io : La nouvelle Γ¨re du CI/CD dans le monde DevOps

    3 projects | dev.to | 14 May 2024
  • How to POST documents to validator.w3.org for checking

    1 project | news.ycombinator.com | 13 May 2024
  • Biome.js : Prettier+ESLint killer ?

    4 projects | dev.to | 18 Apr 2024
  • Supercharge your workflow with Husky, Lint Staged and Commitlint

    2 projects | dev.to | 7 May 2024
  • An infinite canvas for code exploration

    3 projects | news.ycombinator.com | 6 May 2024
  • Utilities for refactoring and upgrading Ruby code based on ASTs

    3 projects | news.ycombinator.com | 6 May 2024
  • A note from our sponsor - SaaSHub
    www.saashub.com | 23 May 2024
    SaaSHub helps you find the best software and product alternatives Learn more β†’

Index

What are some of the best open-source Linter projects? This list will help you:

Project Stars
1 ShellCheck 35,150
2 Standard 28,894
3 ruff 27,218
4 ESLint 24,374
5 SwiftLint 18,367
6 mypy 17,643
7 golangci-lint 14,590
8 ale 13,303
9 static-analysis 12,940
10 lint-staged 12,931
11 rubocop 12,518
12 pre-commit 12,156
13 stylelint 10,844
14 biome 11,042
15 hadolint 9,889
16 super-linter 9,198
17 oxc 9,073
18 XO 7,555
19 reviewdog 7,425
20 tfsec 6,583
21 isort 6,329
22 detekt 6,078
23 bandit 6,047

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com