Python Linter

Open-source Python projects categorized as Linter

Top 23 Python Linter Projects

  • mypy

    Optional static typing for Python

    Project mention: Polars – A bird's eye view of Polars | news.ycombinator.com | 2024-02-13

    It's got type annotations and mypy has a discussion about it here as well: https://github.com/python/mypy/issues/1282

  • pre-commit

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

    Project mention: Implementing Quality Checks In Your Git Workflow With Hooks and pre-commit | dev.to | 2023-12-13

    # See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.2.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-yaml - id: check-toml - id: check-added-large-files - repo: local hooks: - id: tox lint name: tox-validation entry: pdm run tox -e test,lint language: system files: ^src\/.+py$|pyproject.toml|^tests\/.+py$ types_or: [python, toml] pass_filenames: false - id: tox docs name: tox-docs language: system entry: pdm run tox -e docs types_or: [python, rst, toml] files: ^src\/.+py$|pyproject.toml|^docs\/ pass_filenames: false - repo: https://github.com/pdm-project/pdm rev: 2.10.4 # a PDM release exposing the hook hooks: - id: pdm-lock-check - repo: https://github.com/jumanjihouse/pre-commit-hooks rev: 3.0.0 hooks: - id: markdownlint

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

  • isort

    A Python utility / library to sort imports.

    Project mention: A Tale of Two Kitchens - Hypermodernizing Your Python Code Base | dev.to | 2023-11-12

    isort will sort the imports for you

  • bandit

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

    Project mention: Enhance your python code security using bandit | dev.to | 2024-02-29

    repos: - repo: https://github.com/PyCQA/bandit rev: 1.7.7 hooks: - id: bandit args: ["-c", "pyproject.toml", "-r", "."] additional_dependencies: ["bandit[toml]"]

  • Pylint

    It's not just a linter that annoys you!

    Project mention: W1203: logging-fstring-interpolation (Solved) | dev.to | 2024-01-21

    A little introduction about pylint. Pylint is a static code analyzer, it analyses your code without actually running it. Pylint looks for potential errors, gives suggestions on coding standards that your code is not adhering to, potential places where refactoring might help, and also warnings about smelly code.

  • pre-commit-hooks

    Some out-of-the-box hooks for pre-commit

    Project mention: Implementing Quality Checks In Your Git Workflow With Hooks and pre-commit | dev.to | 2023-12-13

    # See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.2.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-yaml - id: check-toml - id: check-added-large-files - repo: local hooks: - id: tox lint name: tox-validation entry: pdm run tox -e test,lint language: system files: ^src\/.+py$|pyproject.toml|^tests\/.+py$ types_or: [python, toml] pass_filenames: false - id: tox docs name: tox-docs language: system entry: pdm run tox -e docs types_or: [python, rst, toml] files: ^src\/.+py$|pyproject.toml|^docs\/ pass_filenames: false - repo: https://github.com/pdm-project/pdm rev: 2.10.4 # a PDM release exposing the hook hooks: - id: pdm-lock-check - repo: https://github.com/jumanjihouse/pre-commit-hooks rev: 3.0.0 hooks: - id: markdownlint

  • pytype

    A static type analyzer for Python code

    Project mention: A Tale of Two Kitchens - Hypermodernizing Your Python Code Base | dev.to | 2023-11-12

    Pyre from Meta, pyright from Microsoft and PyType from Google provide additional assistance. They can 'infer' types based on code flow and existing types within the code.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • proselint

    A linter for prose.

    Project mention: Getting Started with Technical Writing | news.ycombinator.com | 2023-11-27

    So cool. Looks like the proseline site is down. For anyone else who wanted to read the approach - https://github.com/amperser/proselint/blob/b5b7536bec5fd461e...

  • pyupgrade

    A tool (and pre-commit hook) to automatically upgrade syntax for newer versions of the language.

    Project mention: A Tale of Two Kitchens - Hypermodernizing Your Python Code Base | dev.to | 2023-11-12

    pyupgrade and flynt are examples of tools that modify your code base from earlier python versions into the newest python syntax, rewriting all string formats into f-strings and similar things.

  • Flake8

    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.

    Project mention: Django Code Formatting and Linting Made Easy: A Step-by-Step Pre-commit Hook Tutorial | dev.to | 2023-10-05
  • yamllint

    A linter for YAML files.

    Project mention: yamllint – A Linter for YAML Files | news.ycombinator.com | 2023-09-20
  • wemake-python-styleguide

    The strictest and most opinionated python linter ever!

  • cfn-python-lint

    CloudFormation Linter

    Project mention: Deploy config rules across your organization | dev.to | 2024-02-15

    Now the first 3 options are pretty straight forward. The template itself is a bit more complicated. In my example I used an inline template, I did this for the sake of this blog. But you can also reference an existing object on S3. This way you can use linting tools like cfn-lint on your conformance pack. This will reduce errors during deployment as you can catch them before you commit and push your code.

  • prospector

    Inspects Python source files and provides information about type and location of classes, methods etc

    Project mention: The Ruff python linter is insanely good | /r/Python | 2023-03-16

    Just before discovering ruff, I was already migrating to PyCQA/prospector to simplify my configs...

  • cpplint

    Static code checker for C++

  • pyflakes

    A simple program which checks Python source files for errors

  • pylama

    Code audit tool for python.

  • flake8-bugbear

    A plugin for Flake8 finding likely bugs and design problems in your program. Contains warnings that don't belong in pyflakes and pycodestyle.

    Project mention: A Tale of Two Kitchens - Hypermodernizing Your Python Code Base | dev.to | 2023-11-12

    Bugbear is not specifically a security tool but serves as an effective guard against common coding errors and pitfalls. It pinpoints and rectifies frequent mistakes like setting a list as a default value for a parameter and cautions against such practices, enhancing code robustness.

  • best-of-python-dev

    🏆 A ranked list of awesome python developer tools and libraries. Updated weekly.

  • autoflake

    Removes unused imports and unused variables as reported by pyflakes

    Project mention: Embracing Modern Python for Web Development | dev.to | 2023-12-08

    Ruff is not only much faster, but it is also very convenient to have an all-in-one solution that replaces multiple other widely used tools: Flake8 (linter), isort (imports sorting), Black (code formatter), autoflake, many Flake8 plugins and more. And it has drop-in parity with these tools, so it is really straightforward to migrate from them to Ruff.

  • sublime-phpcs

    🔍 PHP CodeSniffer, PHP Coding Standard Fixer, Linter, and Mess Detector Support for Sublime Text

    Project mention: Laravel code-quality tools | dev.to | 2024-02-08

    Sublime-phpcs - adds support for PHP_CodeSniffer, PHP Code Beautifier, PHP CS Fixer, PHP Linter, and PHP Mess Detector.

  • reorder-python-imports

    Rewrites source to reorder python imports

  • flynt

    A tool to automatically convert old string literal formatting to f-strings

    Project mention: flynt – convert old Python code to use Python 3.6's "f-strings" | news.ycombinator.com | 2023-12-29
  • SaaSHub

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

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). The latest post mention was on 2024-02-29.

Python Linter related posts

Index

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

Project Stars
1 mypy 17,253
2 pre-commit 11,724
3 isort 6,249
4 bandit 5,843
5 Pylint 5,053
6 pre-commit-hooks 4,714
7 pytype 4,492
8 proselint 4,256
9 pyupgrade 3,246
10 Flake8 3,197
11 yamllint 2,637
12 wemake-python-styleguide 2,379
13 cfn-python-lint 2,322
14 prospector 1,895
15 cpplint 1,428
16 pyflakes 1,327
17 pylama 1,034
18 flake8-bugbear 1,025
19 best-of-python-dev 880
20 autoflake 843
21 sublime-phpcs 807
22 reorder-python-imports 695
23 flynt 664
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com