zuban
Zuban - The Zuban Language Server
What it is and what it does
Zuban is a Python language server and type checker written in Rust, designed as a faster alternative to Mypy and other type checkers. It runs in two primary modes: a PyRight-like mode for modern type checking and a Mypy-compatible mode that accepts the same configuration files, command-line flags, and error messages as Mypy. This makes it a drop-in replacement for teams already using Mypy who want better performance without rewriting their type-checking setup.
The package provides full LSP support, enabling IDE integration for real-time diagnostics, code completion, go-to-definition, find references, rename refactoring, hover information, and document highlights. It has no runtime dependencies, only requires Python 3.7 or later, and is distributed as pre-compiled wheels for macOS (Intel and ARM), Linux (multiple architectures including ARM), Windows, and musl-based systems. The project is actively maintained and carries an AGPL-3.0 license with commercial licensing available.
Use it for:
- Replace Mypy in an existing project to speed up type checking in CI/CD pipelines while keeping the same config and error format.
- Integrate a fast type checker into an IDE or editor via LSP for real-time type diagnostics and code completion.
- Perform static type analysis on large Python codebases where Mypy's speed becomes a bottleneck.
- Set up a development environment with PyRight-like checking without switching away from Mypy's familiar interface.
- Use as a command-line type checker (zmypy alias) in scripts and automation where performance matters.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Zuban is a Rust-based Python language server and type checker offering Mypy-compatible and PyRight-like checking modes, with LSP support for diagnostics, completions, goto, references, rename, hover, and document highlights.
Yes, if you need a faster type checker and can accept the AGPL-3.0 license (or purchase a commercial license). Zuban is actively maintained, has no runtime dependencies, and offers both Mypy and PyRight compatibility modes. The medium install friction is offset by pre-built wheels across many platforms. Verify performance claims and type system coverage against your specific codebase before committing to production use.
Install
zuban on PyPI
pip
pip install zubanuv
uv add zubanpoetry
poetry add zubanInstalling zuban
Before you install
Medium install friction due to compiled wheels across multiple platforms (macOS, Linux, Windows, ARM variants). Active maintenance with recent releases; last commit 2026-08-12 and version 0.9.1 released 2026-07-31. No runtime dependencies simplifies deployment.
License in practice
Dual-licensed under AGPL-3.0 for open-source use and a proprietary commercial license. AGPL-3.0 requires you to share modifications and derivative works under the same license; commercial licensing available from zubanls.com for organizations preferring different terms.
Quickstart
pip install zuban
zuban check # PyRight-like type checking
zuban mypy # Mypy-compatible mode
zuban server # Start LSP server
Requires Python 3.7 or later; virtual environment activation recommended so Zuban can detect project dependencies.
Verify before relying
- Actual performance comparison data (20–200× faster than Mypy) and memory/CPU usage claims need independent verification.
- Claim that Zuban passes over 95% of Mypy's test suite—specific test suite scope and version alignment unclear.
- Extent of comprehensive type system support and which Python typing features are fully implemented.
Package facts
| License | AGPL-3.0-only (agpl) |
| Python support | supports the current Python release (>=3.7) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 14 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 240,357/month — #8,905 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: zuban-0.9.1-py3-none-macosx_10_12_x86_64.whl; zuban-0.9.1-py3-none-macosx_11_0_arm64.whl; zuban-0.9.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; zuban-0.9.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; zuban-0.9.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl; zuban-0.9.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; zuban-0.9.1-py3-none-musllinux_1_2_aarch64.whl; zuban-0.9.1-py3-none-musllinux_1_2_armv7l.whl; zuban-0.9.1-py3-none-musllinux_1_2_i686.whl; zuban-0.9.1-py3-none-musllinux_1_2_x86_64.whl; zuban-0.9.1-py3-none-win32.whl; zuban-0.9.1-py3-none-win_amd64.whl
Keywords: typechecking, mypy, static, analysis, autocompletion
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
jedi-language-serverA Language Server Protocol implementation for…
permissive · top 15,000 on PyPI
tyA fast Python type checker and language server…
permissive · top 1,000 on PyPI
pyreflyPyrefly is a fast type checker and language…
permissive · top 5,000 on PyPI
python-lsp-serverImplements the Language Server Protocol for…
permissive · top 5,000 on PyPI
python-language-serverImplements the Language Server Protocol for…
unclear · top 15,000 on PyPI
loroLoro provides Python bindings for a CRDT…
unclear · top 5,000 on PyPI
pylsp-mypyIntegrates mypy static type checking into the…
permissive · top 15,000 on PyPI
ruff-lspProvides a Language Server Protocol bridge to…
permissive · top 15,000 on PyPI
rustworkxA high-performance graph library for Python,…
permissive · top 5,000 on PyPI
ignore-pythonProvides fast recursive directory traversal…
unclear · top 15,000 on PyPI