Open Source Alternatives LogoOpen Source Alternatives
AlternativesBlogAdvertise
Open Source Alternatives LogoOpen Source Alternatives

Stay Updated

Subscribe to our newsletter for the latest news and updates about Alternatives

Open Source Alternatives LogoOpen Source Alternatives

Handpicked Open Source Alternatives to Paid Softwares

Product
  • Categories
  • Tag
  • Sign In
Resources
  • Blog
  • Collection
  • Submit
  • Advertise your tool
Company
  • Privacy Policy
  • Terms of Service
  • Refund Policy
  • Sitemap
Copyright © 2026 All Rights Reserved.
Home/Categories/Developer Tools/pyrefly
Pyrefly logo

pyrefly

Open source alternative to PyCharm Professional and SonarCloud

Analyze Python codebases for type errors at blazing speed with a built-in language server for IDE integration.

6.9K starsRustMITActive this week
Visit websiteGitHub repo
Pyrefly Python type checker preview
Contents
  1. 01Who pyrefly is for
  2. 02The problem it solves
  3. 03How it solves it
  4. 04Strengths and trade-offs
  5. 05pyrefly vs alternatives
  6. 06Install and self-host
  7. 07Tech stack
  8. 08FAQ
  9. 09Similar open-source tools
TL;DR

pyrefly is a Python type checker and language server that checks over 1.85 million lines of code per second and provides full IDE features: navigation, autocomplete, semantic highlighting, and inlay hints. It is the default type checker for Instagram's 20-million-line Python codebase at Meta, and MIT licensed.MIT · Rust · 6.9K stars · Active this week

who it's for

Who pyrefly is for#

Team migrating from Mypy

Migrates a large Python project from Mypy by running `pyrefly init` to port configuration, then `pyrefly suppress` to silence legacy errors and enforce types on new code only.

Developer wanting fast editor feedback

Installs the Pyrefly VSCode extension to get sub-10ms type-check feedback in the editor instead of waiting for a full Mypy run.

Data science team with Pydantic pipelines

Adds Pyrefly to CI to catch type errors in a Pydantic-heavy data pipeline before they reach production.

Library author releasing to PyPI

Uses Pyrefly to verify type annotations are complete and correct before publishing a new release to PyPI.

Django developer

Gets autocomplete and type errors on model fields directly in their editor using Pyrefly's built-in Django support.

the problem

The problem it solves#

Python type checking with Mypy or Pyright becomes painfully slow on large codebases: a full check of a project like PyTorch can take minutes, breaking the development feedback loop. Language servers with separate type checker and IDE backends produce inconsistent results between the CLI and the editor. Teams adopting type checking incrementally get blocked by the difficulty of migrating existing untyped code without triggering thousands of new errors in code they are not currently working on.

how pyrefly solves it

How it solves it#

1.85M lines/second, 15x faster than Mypy

Checks 1.85 million lines of code per second, 15x faster than Mypy on projects like PyTorch

Sub-10ms IDE recheck on save

IDE rechecks typically complete in under 10ms after saving a file, keeping the feedback loop tight

Full language server for VSCode, Neovim, Zed

Full language server: code navigation, autocomplete, hover information, inlay hints, and semantic highlighting in VSCode, Neovim, Zed, and more

Incremental migration from Mypy/Pyright

`pyrefly init` migrates existing projects from Mypy or Pyright; `pyrefly suppress` silences pre-existing errors for incremental adoption

Built-in Pydantic and Django support

Built-in support for Pydantic and Django with framework-aware model validation and field-type autocomplete

Production-proven at Meta scale

Production-proven at Meta across Instagram (20 million lines) and adopted by PyTorch and JAX

strengths · trade-offs

Strengths and trade-offs#

Strengths

  • One engine for CLI and language serverThe same type-checking engine powers both the CLI and the language server, so results are consistent between your editor and CI with no divergence
  • Incremental adoption via suppressIncremental adoption path via `pyrefly suppress` means you can start typing one file at a time without drowning in legacy errors
  • Meta-scale production validationProduction scale validation at Meta provides confidence it handles real-world Python patterns at a scale most type checkers have not been tested against
  • Stable 1.0.0 release with MIT licenseStable 1.0.0 release with MIT license and monthly minor releases

Trade-offs

  • -Monthly releases may add new type errorsMonthly minor versions may introduce new type errors on upgrade, requiring attention; Pyrefly does not follow strict semantic versioning
  • -Third-party plugin ecosystem less mature than MypyPydantic and Django framework support is built in, but third-party framework plugins are less mature than the Mypy plugin ecosystem
  • -Roadmap driven by Meta's internal needsPrimarily developed by Meta; the project roadmap is driven by Meta's internal needs, so community feature requests compete with internal priorities
versus alternatives

pyrefly vs alternatives#

pyrefly is an MIT-licensed Python type checker and language server that competes with proprietary IDE typing experiences such as Pylance in VS Code and PyCharm inspections.

vs Pylance: Pylance gives VS Code users a polished proprietary language server with Python analysis settings built into the Microsoft Python workflow. pyrefly is the better fit when you want the same checker available in CI, the terminal, VS Code, Neovim, Zed, and other editors, with one command-line tool and one set of diagnostics.

vs PyCharm: PyCharm is stronger when a team wants a full commercial Python IDE with inspections, navigation, refactoring, debugger, and JetBrains support in one product. pyrefly is narrower: it focuses on fast type checking, IDE diagnostics, language-server features, and migration from mypy or pyright with the pyrefly init command.

vs mypy or Pyright workflows: pyrefly is most compelling for large Python codebases that need faster checks and consistent CLI plus editor behavior. Existing mypy or Pyright setups may still be safer when plugin compatibility, long-established behavior, or exact diagnostic stability matters more than speed.

install · self-host

Install and self-host#

bash
pip install pyrefly
tech stack · detected from GitHub

What it's built on#

Languages
PythonRustTypeScript
Frameworks
React
Tooling
esbuild
frequently asked

FAQ#

How do I migrate from Mypy?

Run pyrefly init at your project root. It reads your mypy.ini or setup.cfg configuration and generates a Pyrefly config. Then run pyrefly suppress to add inline suppressions for existing errors so you start clean without touching legacy code.

Is the CLI type checker the same binary as the language server?

Yes. The language server and CLI share the same type-checking engine. You get consistent results whether you are running a check in CI or getting hover information in your editor.

Does Pyrefly support Python 2?

No. Pyrefly targets Python 3 and the modern type annotation syntax introduced in PEP 484 and subsequent PEPs. Python 2 is not supported.

also worth a look

Similar open-source tools#

repowise

repowise

Codebase intelligence: MCP tools for agents, health scores for teams.

5.4KPythonAGPL-3.0
dograh

dograh

Open source voice agent builder with telephony and BYOK AI support

5.3KPythonBSD-2-Clause
whishper

whishper

Local speech-to-text transcription and subtitling with a web UI

3.1KSvelteAGPL-3.0
ego-lite

ego-lite

AI agent browser with shared Chrome state, zero cost

10.4KJavaScriptMIT
r3

r3

Minimalist Forth language for games and systems programming

217ForthMIT
t3code

t3code

Control your coding agents from one interface

18.6KTypeScriptMIT

Repository

Stars
6.9K
Forks
480
License
MIT
Latest
1.2.0
Last commit
today
Last verified
Aug 16, 2026
Repo
facebook/pyrefly ↗

Additional details

Language
Rust
Open issues
689
Contributors
312
First release
2025

Categories

Developer ToolsWeb DevelopmentAI & Machine Learning

Tags

Developer ToolsAI Coding AssistantCode Editors