Software Alternatives & Reviews

flake8 VS Pyright

Compare flake8 VS Pyright and see what are their differences

flake8 logo flake8

A wrapper around Python tools to check the style and quality of Python code.

Pyright logo Pyright

Static type checker for Python. Contribute to microsoft/pyright development by creating an account on GitHub.
  • flake8 Landing page
    Landing page //
    2022-12-20
  • Pyright Landing page
    Landing page //
    2023-08-01

flake8 videos

Linters and fixers: never worry about code formatting again (Vim + Ale + Flake8 & Black for Python)

More videos:

  • Review - flake8 на максималках: что, как и зачем / Илья Лебедев

Pyright videos

Vim setup for Python programmers: conquer of completion (coc) and pyright

Category Popularity

0-100% (relative to flake8 and Pyright)
Code Coverage
50 50%
50% 50
Code Analysis
56 56%
44% 44
Code Quality
57 57%
43% 43
Code Review
48 48%
52% 52

User comments

Share your experience with using flake8 and Pyright. For example, how are they different and which one is better?
Log in or Post with

Social recommendations and mentions

Based on our record, Pyright should be more popular than flake8. It has been mentiond 12 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.

flake8 mentions (5)

  • How I start every new Python backend API project
    Repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.3.0 hooks: - id: trailing-whitespace - id: check-merge-conflict - id: check-yaml args: [--unsafe] - id: check-json - id: detect-private-key - id: end-of-file-fixer - repo: https://github.com/timothycrosley/isort rev: 5.10.1 hooks: - id: isort - repo:... - Source: dev.to / over 1 year ago
  • Flake8 took down the gitlab repository in favor of github
    I just ran `pre-commit autoupdate`. It's asking for a username for https://gitlab.com/pycqa/flake8. :-(. Source: over 1 year ago
  • flake8-length: Flake8 plugin for a smart line length validation.
    Flake8 plugin for a smart line length validation. Source: over 1 year ago
  • Make your Django project newbie contributor friendly with pre-commit
    $ pre-commit install Pre-commit installed at .git/hooks/pre-commit $ git add .pre-commit-config.yaml $ git commit -m "Add pre-commit config" [INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks. [INFO] Initializing environment for https://gitlab.com/pycqa/flake8. [INFO] Initializing environment for https://github.com/pycqa/isort. [INFO] Initializing environment for... - Source: dev.to / almost 3 years ago
  • On unit testing
    If you're looking for just good automated error checking, I personally use a bunch of flake8 plugins via pre-commit hooks: flake8-bugbear, flake8-builtins, flake8-bandit, etc. You can find a bunch of sites that give recommended plugins and you just need to pick which ones you care about :). Source: about 3 years ago

Pyright mentions (12)

  • Enhance Your Project Quality with These Top Python Libraries
    Pyright is a fast type checker meant for large Python source bases. It can run in a “watch” mode and performs fast incremental updates when files are modified. - Source: dev.to / about 1 month ago
  • VSCodium – Libre Open Source Software Binaries of VS Code
    You can use pyright instead[0]. It is the FOSS version of pyright, but having some features missing. [0]: https://github.com/microsoft/pyright. - Source: Hacker News / 8 months ago
  • PSA: Configuring LSP w/o nvim-lspconfig is Simple!
    This is not the case! After reading the LSP help pages (:help lsp), I installed and configured two language servers: Typescript Language Server for JavaScript and Pyright for Python. Neovim has fantastic defaults, so things like tags, omnicompletion, and semantic highlighting (New in 0.9) are enabled and configured by default as long as your language server supports them. You can see my configuration below. Source: about 1 year ago
  • Python is two languages now, and that's great
    I've had lots of success using pyright [1] for Python projects, it has sensible defaults and can be configured with a pyproject.toml file so everyone's using the same settings. I use the Pylance VSCode extension to catch errors earlier, but I also put it in pre-commit and as a CI check, so all contributors are committing the same quality of typed code. With more complex types, I've found it isn't necessary to do... - Source: Hacker News / about 1 year ago
  • 40x Faster! We rewrote our project with Rust!
    I use pyright as my LSP in Neovim for Python code, so I just use mypy for static type checking within CI/CD and GitHub actions. Source: about 1 year ago
View more

What are some alternatives?

When comparing flake8 and Pyright, you can also consider the following products

PyLint - Pylint is a Python source code analyzer which looks for programming errors.

PyFlakes - A simple program which checks Python source files for errors.

PEP8 - pep8 is a tool to check your Python code against some of the style conventions in PEP 8.

SonarQube - SonarQube, a core component of the Sonar solution, is an open source, self-managed tool that systematically helps developers and organizations deliver Clean Code.

PyChecker - Python source code checking tool.

PyCharm - Python & Django IDE with intelligent code completion, on-the-fly error checking, quick-fixes, and much more...