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

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

6.6K 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.6K 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.

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?
Is the CLI type checker the same binary as the language server?
Does Pyrefly support Python 2?
also worth a look

Similar open-source tools#

orca

orca

The ultimate IDE for coding agents

3.3KTypeScriptMIT

Repository

Stars
6.6K
Forks
389
License
MIT
Latest
1.0.0
Last commit
4 days ago
Last verified
Jun 3, 2026
Repo
facebook/pyrefly ↗

Additional details

Language
Rust
Open issues
601
Contributors
256
First release
2025

Categories

Developer ToolsWeb DevelopmentAI & Machine Learning

Tags

Developer ToolsAI Coding AssistantCode Editors

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

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

CLI-Anything

CLI-Anything

Empower AI agents with agent-native CLIs

42.1KPythonApache-2.0
oh-my-pi

oh-my-pi

A coding agent with the IDE wired in

7.2KTypeScriptMIT
Understand-Anything

Understand-Anything

Interactive knowledge graphs for codebases

53KTypeScriptMIT
agentmemory

agentmemory

Persistent memory for AI coding agents

21.4KTypeScriptApache-2.0
codegraph

codegraph

Transform codebases into queryable knowledge graphs

42.4KTypeScriptMIT

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.

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.