ty README

The project's README from github.com/astral-sh/ty. As one markdown file: README.md.

ty

ty PyPI Discord

An extremely fast Python type checker and language server, written in Rust.


Shows a bar chart with benchmark results.

Type checking the home-assistant project without caching.


ty is backed by Astral, the creators of uv and Ruff.

ty is currently in beta.

Highlights

Getting started

Run ty with uvx to get started quickly:

uvx ty check

Or, check out the ty playground to try it out in your browser.

To learn more about using ty, see the documentation.

Installation

To install ty, see the installation documentation.

To add the ty language server to your editor, see the editor integration guide.

Getting help

If you have questions or want to report a bug, please open an issue in this repository.

You may also join our Discord server.

Contributing

Development of this project takes place in the Ruff repository at this time. Please open pull requests there for changes to anything in the ruff submodule (which includes all of the Rust source code).

See the contributing guide for more details.

Version policy

ty uses 0.0.x versioning. ty does not yet have a stable API; breaking changes, including changes to diagnostics, may occur between any two versions. See the type system support tracking issue for a detailed overview of currently supported features.

For information on the timeline, you can check out the Stable milestone.

FAQ

Which Python versions does ty support?

ty officially supports type checking code that targets Python 3.10 and later. Earlier versions (Python 3.7 through 3.9) can still be selected, but may result in false negatives or false positives due to a lack of bundled standard library stubs.

The target version is independent of the Python version used to install ty. For example, ty installed from PyPI using Python 3.8 or later can type check code targeting Python 3.7; the standalone installer does not require Python at all.

Why is ty doing _____?

See our typing FAQ.

How do you pronounce ty?

It's pronounced as "tee - why" (/tiː waɪ/)

How should I stylize ty?

Just "ty", please.

License

ty is licensed under the MIT license (LICENSE or https://opensource.org/licenses/MIT).

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in ty by you, as defined in the MIT license, shall be licensed as above, without any additional terms or conditions.

Made by Astral

ty (astral-sh/ty)

Searching Database…

19.9K ·GitHub
What is this?ty is an extremely fast Python type checker and language server written in Rust, built by Astral (the team behind uv and Ruff). It is currently in beta.
Do I import ty as a Python library, or run it separately?ty is not a Python package you import; it is a standalone CLI type checker and a language server (LSP) that editors like VS Code, PyCharm, and Neovim connect to.
How do I get ty running?The quickest way is to run `uvx ty`, which fetches and runs it without a separate install step. You can also try it instantly in the browser-based playground before installing anything.
Do I need Python installed to use ty?Not necessarily - the standalone installer doesn't require Python at all. The Python version used to install ty is also independent of the Python version it type-checks.
Is ty stable enough for production use?Not yet - ty uses 0.0.x versioning and has no stable API, so breaking changes, including changes to diagnostics, can happen between any two versions.
How much faster is ty than mypy or Pyright?The project claims ty is roughly 10x to 100x faster than mypy and Pyright, largely thanks to being written in Rust with fine-grained incremental analysis.
Why is ty's development happening in the Ruff repository?ty's Rust source code lives as a submodule inside the Ruff repository, so pull requests touching the core checker are opened there instead of in the ty repo itself.
How do you pronounce 'ty'?It's pronounced 'tee-why' (/tiːwaɪ/), and the project asks that it just be stylized as 'ty'.
What are similar projects?uv, ts-rust, helix, rust-analyzer, LunarVim, YouCompleteMe, ruff, fallow
Creator
astral-sh
Size
5 MB
Stars
19.9K
Age
1y
Commits · 90 Days