[go: up one dir, main page]

Browse free open source Linters and projects for Windows below. Use the toggles on the left to filter open source Linters by OS, license, language, programming language, and project status.

  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    The database for AI-powered applications.

    MongoDB Atlas is the developer-friendly database used to build, scale, and run gen AI and LLM-powered apps—without needing a separate vector database. Atlas offers built-in vector search, global availability across 115+ regions, and flexible document modeling. Start building AI apps faster, all in one place.
    Start Free
  • Dominate AI Search Results Icon
    Dominate AI Search Results

    Generative Al is shaping brand discovery. AthenaHQ ensures your brand leads the conversation.

    AthenaHQ is a cutting-edge platform for Generative Engine Optimization (GEO), designed to help brands optimize their visibility and performance across AI-driven search platforms like ChatGPT, Google AI, and more.
    Learn More
  • 1
    golangci-lint

    golangci-lint

    Fast linters Runner for Go

    golangci-lint is a fast Go linters runner. It runs linters in parallel, uses caching, supports yaml config, has integrations with all major IDE and has dozens of linters included. ⚡ Very fast: runs linters in parallel, reuses Go build cache and caches analysis results. Yaml-based configuration. Integrations with VS Code, Sublime Text, GoLand, GNU Emacs, Vim, Atom, GitHub Actions. A lot of linters included, no need to install them. Minimum number of false positives because of tuned default settings. Nice output with colors, source code lines and marked identifiers.
    Downloads: 94 This Week
    Last Update:
    See Project
  • 2
    Dockle

    Dockle

    Container Image Linter for Security

    Container Image Linter for Security, Helping build the Best-Practice Docker Image, Easy to start. You can install dockle with the asdf version manager with this plugin, which automates the process of installing (and switching between) various versions of github release binaries. With asdf already installed, run commands to install dockle. You can scan your built image with Dockle in Travis CI/CircleCI. Though, you can ignore the specified target checkpoints by using .dockleignore file. Or, if you just want the results to display and not let the test fail for this, specify --exit-code to 0 in dockle command.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 3
    ESLint

    ESLint

    The pluggable linting utility for identifying patterns in Javascript

    ESLint is an open source tool for identifying and reporting on patterns found in ECMAScript/JavaScript code. ESLint is written using Node.js
    Downloads: 9 This Week
    Last Update:
    See Project
  • 4
    Optic

    Optic

    Generate, Diff, and Test OpenAPI Descriptions

    Vizualize API changes to improve the quality of reviews. Test API changes to ensure nothing bad slips through. OpenAPI diffs are difficult to read. Because these files contain references, small changes can have a large effect on your API. Linters can not check for backward compatibility or enforce versioning and deprecation policies. Optic adds a visual changelog to every Pull Request that makes it easy to see exactly what API changes have been proposed. Optic tests each set of API changes in CI, making it more powerful than a linter. Our built-in checks will help any team ship a more reliable API. OpenAPI diffs are very difficult to review, comprehend and give feedback on. Optic’s changelogs are easy to understand allowing anyone (even non-developers) to participate in review. Optic goes beyond linting OpenAPI, it lets you write test about each set of API changes. We also make it easy to share your API standards.
    Downloads: 6 This Week
    Last Update:
    See Project
  • Yeastar: Business Phone System and Unified Communications Icon
    Yeastar: Business Phone System and Unified Communications

    Go beyond just a PBX with all communications integrated as one.

    User-friendly, optimized, and scalable, the Yeastar P-Series Phone System redefines business connectivity by bringing together calling, meetings, omnichannel messaging, and integrations in one simple platform—removing the limitations of distance, platforms, and systems.
    Learn More
  • 5
    ktlint

    ktlint

    An anti-bikeshedding Kotlin linter with built-in formatter

    No configuration, which means no decisions to make, nothing to argue about and no special files to manage. While this might sound extreme, keep in mind that ktlint tries to capture (reflect) official code style from kotlinlang.org and Android Kotlin Style Guide (+ we respect your .editorconfig and support additional ruleset|s). Built-in formatter. So that you wouldn't have to fix all style violations by hand. Customizable output. plain (+ plain?group_by_file), JSON, HTML and check style reporters are available out-of-the-box. It's also easy to create your own. A single executable jar with all dependencies included. ktlint is a single binary with both linter & formatter included. All you need is to drop it in (no need to get overwhelmed while choosing among dozens of code style options).
    Downloads: 6 This Week
    Last Update:
    See Project
  • 6
    Haskell Dockerfile Linter

    Haskell Dockerfile Linter

    Dockerfile linter, validate inline bash, written in Haskell

    A smarter Dockerfile linter that helps you build best practice Docker images. The linter parses the Dockerfile into an AST and performs rules on top of the AST. It stands on the shoulders of ShellCheck to lint the Bash code inside RUN instructions. You can run hadolint locally to lint your Dockerfile. You can download prebuilt binaries for OSX, Windows and Linux from the latest release page. However, if this does not work for you, please fall back to container (Docker), brew or source installation. Configuration files can be used globally or per project.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 7
    JavaScript Standard Style

    JavaScript Standard Style

    JavaScript style guide, linter, and formatter

    JavaScript Standard Style is a JavaScript style guide with linter and automatic formatter. It’s the simple, easy, fuss-free way to get a consistent style in your project. No more hundred-line style configuration files for every module/project; no more messy or inconsistent code; and no more wasting time sending code back and forth between reviewer and contributor. With Standard, your code is automatically formatted, no configuration necessary. With Standard, code clarity and community conventions is paramount. This may not make sense to all projects or development cultures, but does make a lot of sense for open source projects where setting up clear, automated contributor expectations makes a project healthier.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 8
    Joker

    Joker

    Small Clojure interpreter, linter and formatter

    Joker is a small interpreted dialect of Clojure written in Go. It is also a Clojure(Script) linter. Send HTTP requests, read and parse JSON, work with file system, start external processes etc. Checks for syntax errors, function arity mismatches, unresolvable symbols, unused namespaces, vars, bindings and much more. Joker uses .joke filename extension. Normally exits after executing the script, unless --exit-to-repl is specified before --file <filename> in which case drops into the REPL after the script is (successfully) executed. (Note use of --file, in this case, to ensure <filename> is not treated as a <socket> specification for the reply.) Our goal is to be suitable for scripting (lightweight, fast startup). This is something that Clojure is not good at and my personal itch I am trying to scratch. Also, to provide some tooling for Clojure and its dialects. Joker has linter mode which can be used for linting Joker, Clojure and ClojureScript code.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 9
    SublimeLinter-eslint

    SublimeLinter-eslint

    This linter plugin for SublimeLinter provides an interface to ESLint

    This linter plugin for SublimeLinter provides an interface to ESLint. It will be used with "JavaScript" files, but since eslint is pluggable, it can actually lint a variety of other files as well. SublimeLinter will detect some installed local plugins, and thus it should work automatically for e.g. .vue or .ts files. If it works on the command line, there is a chance it works in Sublime without further ado. Make sure the plugins are installed locally colocated to eslint itself. T.i., technically, both eslint and its plugins are described in the very same package.json. Configuration of the plugins is out-of-scope of this README. Be sure to read their README's as well. (If you just installed a plugin, without proper configuration, eslint will probably show error messages or wrong lint results, and SublimeLinter will just pass them to you.)
    Downloads: 3 This Week
    Last Update:
    See Project
  • AI-based, Comprehensive Service Management for Businesses and IT Providers Icon
    AI-based, Comprehensive Service Management for Businesses and IT Providers

    Modular solutions for change management, asset management and more

    ChangeGear provides IT staff with the functions required to manage everything from ticketing to incident, change and asset management and more. ChangeGear includes a virtual agent, self-service portals and AI-based features to support analyst and end user productivity.
    Learn More
  • 10
    Ultracite

    Ultracite

    A highly opinionated, zero-configuration linter and formatter

    Ultracite is a highly opinionated, zero-configuration linting and formatting preset designed primarily for modern JavaScript/TypeScript codebases. It is built on top of the Biome toolchain (written in Rust) and aims to deliver sub-second performance so that formatting and linting feel seamless, even on large projects. Because it comes pre-configured with sensible defaults for frameworks like React and Next.js, developers can adopt it with minimal setup—simply run npx ultracite init and start coding. The project emphasizes type-safety and best practices, enforcing stricter rules out of the box so that unsafe or sloppy patterns are discouraged. It also positions itself as “AI-ready,” meaning it’s designed to integrate smoothly into workflows where AI code generation (e.g., from Copilot, Claude Code, etc) is involved, ensuring consistent style across team-written and machine-written code.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 11
    lint-staged

    lint-staged

    Run linters on git staged files

    Run linters against staged git files and don't let anything slip into your code base! Linting makes more sense when run before committing your code. By doing so you can ensure no errors go into the repository and enforce code style. But running a lint process on a whole project is slow, and linting results can be irrelevant. Ultimately you only want to lint files that will be committed. This project contains a script that will run arbitrary shell tasks with a list of staged files as an argument, filtered by a specified glob pattern. Linter commands work on a subset of all staged files, defined by a glob pattern. lint-staged uses micromatch for matching files. The concept of lint-staged is to run configured linter tasks (or other tasks) on files that are staged in git. lint-staged will always pass a list of all staged files to the task, and ignoring any files should be configured in the task itself.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 12
    tslint-to-eslint-config

    tslint-to-eslint-config

    Converts your TSLint configuration to the closest possible ESLint

    Converts your TSLint configuration to the closest reasonable ESLint equivalent. The tslint-to-eslint-config command reads in any existing linter, TypeScript, and package configuration files, then creates an .eslintrc.js result based on them. For any TSLint rules with corresponding ESLint equivalents, those equivalents will be used in the new configuration. TSLint rules without ESLint equivalents will be wrapped with eslint-plugin-tslint. If passed without arguments, respects the excludes, files, and includes in your TypeScript configuration.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 13
    CSSLint

    CSSLint

    Automated linting of cascading stylesheets

    CSSLint is an open-source CSS code quality tool originally written by Nicholas C. Zakas and Nicole Sullivan. A lint tool performs static analysis of source code and flags patterns that might be errors or otherwise cause problems for the developer. CSSLint is a tool to help point out problems with your CSS code. It does basic syntax checking as well as applying a set of rules to the code that look for problematic patterns or signs of inefficiency. The rules are all pluggable, so you can easily write your own or omit ones you don't want. You can integrate CSSLint into your favorite IDE to make checking your CSS code quality easy. In fact, some IDEs already have CSSLint built-in. Once you're familiar with the CSSLint command-line interface, the next step is to integrate it into your build system.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 14
    eslint-config

    eslint-config

    Anthony's ESLint config presets

    Anthony's ESLint config presets. Auto fix for formatting (aimed to be used standalone without Prettier). Designed to work with TypeScript, Vue out-of-box. Lint also for json, yaml, markdown. Sorted imports, dangling commas for cleaner commit diff. Reasonable defaults, best practices, only one-line of config.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 15
    esprint

    esprint

    Fast eslint runner

    esprint (pronounced E-S-sprint) speeds up eslint by running the linting engine across multiple threads. esprint sets up a server daemon to cache the lint status of each file in memory. It uses a watcher to determine when files change, to only lint files as necessary. It also has a CI mode where it does not set up a daemon and just lints in parallel. In order to use esprint, first place an .esprintrc file in the root directory your project. This is similar to a .flowconfig if you use flow types. The .esprintrc file describes which paths to lint and which paths to ignore. You can also override the port to start the background server on. esprint will find the root of your project automatically and lint the whole project. In default mode, esprint will start a background server to watch source files and cache lint results in memory.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 16
    wemake-python-styleguide

    wemake-python-styleguide

    The strictest and most opinionated python linter ever!

    Welcome to the strictest and most opinionated Python linter ever. wemake-python-styleguide is actually a flake8 plugin with some other plugins as dependencies. Ensures consistency - no matter who works on it, the end product will always be the same dependable code. Helps avoid potential bugs - strict rules make sure that you don't make common mistakes. Efficient code reviews - each piece of code has a similar familiar style and syntax. If it passes all the checks, there's little left to review! Fewer code revisions - strict linting ensures that you don't have to re-write the codebase again and again. Reduce code redundancy - Sometimes we write complex code as we are thinking in a certain way about a problem. The linter offers suggestions that can help simplify the code and eliminate redundant statements. The ultimate goal of this project is to make all people write exactly the same Python code.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 17
    Bootlint

    Bootlint

    HTML linter for Bootstrap projects

    Bootlint is a tool that checks for several common HTML mistakes in webpages that are using Bootstrap in a fairly "vanilla" way. Vanilla Bootstrap's components/widgets require their parts of the DOM to conform to certain structures. Bootlint checks that instances of Bootstrap components have correctly structured HTML. Optimal usage of Bootstrap also requires that your pages include certain <meta> tags, an HTML5 doctype declaration, etc.; Bootlint checks that these are present. Bootlint assumes that you are using Bootstrap's default class names in your webpage, as opposed to taking advantage of the "mixins" functionality of Less or Sass to map them to custom class names. If you are using mixins, Bootlint may report some false-positive warnings. However, there are some Bootlint checks that are applicable even if you are using mixins pervasively.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    Ruff

    Ruff

    An extremely fast Python linter, written in Rust

    An extremely fast Python linter, written in Rust. Ruff aims to be orders of magnitude faster than alternative tools while integrating more functionality behind a single, common interface. Ruff can be used to replace Flake8 (plus dozens of plugins), isort, pydocstyle, yesqa, eradicate, pyupgrade, and autoflake, all while executing tens or hundreds of times faster than any individual tool. Ruff is extremely actively developed and used in major open-source projects. Ruff can be configured through a pyproject.toml, ruff.toml, or .ruff.toml file (see: Configuration, or Settings for a complete list of all configuration options). Ruff supports over 500 lint rules, many of which are inspired by popular tools like Flake8, isort, pyupgrade, and others. Regardless of the rule's origin, Ruff re-implements every rule in Rust as a first-party feature.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    babel-eslint

    babel-eslint

    A wrapper for Babel's parser used for ESLint

    babel-eslint allows you to lint ALL valid Babel code with the fantastic ESLint. ESLint's default parser and core rules only support the latest final ECMAScript standard and do not support experimental (such as new features) and non-standard (such as Flow or TypeScript types) syntax provided by Babel. babel-eslint is a parser that allows ESLint to run on source code that is transformed by Babel. You only need to use babel-eslint if you are using Babel to transform your code. If this is not the case, please use the relevant parser for your chosen flavor of ECMAScript (note that the default parser supports all non-experimental syntax as well as JSX). ESLint allows for the use of custom parsers. When using this plugin, your code is parsed by Babel's parser (using the configuration specified in your Babel configuration file) and the resulting AST is transformed into an ESTree-compliant structure that ESLint can understand.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    commitlint

    commitlint

    Lint commit messages

    commitlint checks if your commit messages meet the conventional commit format. commitlint helps your team adhere to a commit convention. By supporting npm-installed configurations it makes sharing of commit conventions easy. We're not a sponsored OSS project. Therefore we can't promise that we will release patch versions for older releases in a timely manner. If you are stuck on an older version and need a security patch we're happy if you can provide a PR. If something in between fails (like a new packages was added and needs to be published for the first time but you forgot) you can use lerna publish from-package to publish anythign that has not been published yet. We identify ease of adoption and developer experience as fields where there is room and need for improvement. The items on the roadmap should enhance commitlint regarding those aspects.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    gts

    gts

    TypeScript style guide, formatter, and linter

    gts is Google's TypeScript style guide, and the configuration for our formatter, linter, and automatic code fixer. No lint rules to edit, no configuration to update, no more bike shedding over syntax. No configuration. The easiest way to enforce consistent style in your project. Just drop it in. Automatically format code. Just run gts fix and say goodbye to messy or inconsistent code. Catch style issues & programmer errors early. Save precious code review time by eliminating back-and-forth between reviewer & contributor. Opinionated, but not to a fault. We recommend you use the default configuration, but if you need to customize compiler or linter config, you can. Under the covers, we use eslint to enforce the style guide and provide automated fixes, and prettier to re-format code.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    prettier standard

    prettier standard

    Formats with Prettier and lints with ESLint+Standard!

    Formats with prettier (actually prettierx) and lints with eslint preconfigured with standard rules. You don't have to fix any whitespace errors and waste time configuring eslint presets. Prettier-standard is best used with the prettier-standard --lint command which formats and lints all non-ignored files in the repository.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    stylelint

    stylelint

    A linter that helps you avoid errors and enforce conventions

    stylelint understands the latest CSS syntax including custom properties and level 4 selectors. Extracts embedded styles from HTML, markdown and CSS-in-JS object & template literals. Parses CSS-like syntaxes like SCSS, Sass, Less and SugarSS. Has over 170 built-in rules to catch errors, apply limits and enforce stylistic conventions. Supports plugins so you can create your own rules or make use of plugins written by the community. Automatically fixes the majority of stylistic violations. Itis well tested with over 15000 unit tests. Supports shareable configs that you can extend or create. It is unopinionated so that you can customize it to your exact needs. stylelint has a growing community and is used by Facebook, GitHub and WordPress. You can configure the built-in stylistic rules to allow both multi-line and single-line rules. The choice of when to use each belongs to the user.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    PyChecker is a static analysis tool for finding bugs in Python source code. It finds problems that are typically caught by a compiler for less dynamic languages, like C and C++. It is similar to lint.
    Downloads: 13 This Week
    Last Update:
    See Project
  • 25

    Notepad++ Linter

    Linter plugin for Notepad++

    A Notepad++ plugin that allows realtime code check against any checkstyle-compatible linter: jshint, eslint, jscs, phpcs, csslint and many others.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next