# Basedpyright > have you ever wanted to adopt a new tool or enable new checks in an existing project, only to be immediately bombarded with thousands of errors you'd have to fix? baseline solves this problem by allow ## Pages - [baseline](benefits-over-pyright-baseline.md): have you ever wanted to adopt a new tool or enable new checks in an existing project, only to be immediately bombarde... - [better defaults](benefits-over-pyright-better-defaults.md): we believe that type checkers and linters should be as strict as possible by default. this ensures that the user awar... - [Extra `dataclass_transform` features](benefits-over-pyright-dataclass-transform.md): `typing.dataclass_transform`is a bit strange. - [errors on invalid configuration](benefits-over-pyright-errors-on-invalid-configuration.md): in pyright, if you have any invalid configuration, it may or may not print a warning to the console, then it will con... - [fixes for existing diagnostic rules](benefits-over-pyright-fixes-for-rules.md): pyright does not report redeclarations if the redeclaration has the same type: - [improved integration with CI platforms](benefits-over-pyright-improved-ci-integration.md): regular pyright has third party integrations for github actions and gitlab, but they are difficult to install/set up.... - [improved type narrowing](benefits-over-pyright-improved-generic-narrowing.md): when narrowing a type using an`isinstance`check, there's no way for the type checker to narrow its type variables, ... - [improved logic for detecting uninitialized instance variables](benefits-over-pyright-improved-reportuninitializedinstancevariable.md): in pyright, the [`reportUninitializedInstanceVariable`](../configuration/config-files.md#reportUninitializedInstanceV... - [localization fixes](benefits-over-pyright-improved-translations.md): the translations in pyright come from microsoft's localization team, who are not programmers. not only does this resu... - [language server improvements](benefits-over-pyright-language-server-improvements.md): in addition to the [pylance exclusive features](./pylance-features.md), basedpyright also contains some additional im... - [new diagnostic rules](benefits-over-pyright-new-diagnostic-rules.md): this section lists all of the new diagnostic rules that are exclusive to basedpyright and the motivation behind them.... - [pylance features](benefits-over-pyright-pylance-features.md): basedpyright re-implements some of the features that microsoft made exclusive to pylance, which is microsoft's closed... - [pypi package and version pinning](benefits-over-pyright-pypi-package-vscode-pinning.md): pyright is only published as an npm package, which requires you to install nodejs. [there is an unofficial version on... - [Command Line](configuration-command-line.md): Usage: basedpyright [options] [files...] [^1] - [Comments](configuration-comments.md): Some behaviors of Pyright can be controlled through the use of comments within the source file. - [Config Files](configuration-config-files.md): basedpyright offers flexible configuration options specified in a JSON-formatted text configuration. By default, the ... - [Language Server Settings](configuration-language-server-settings.md): !!! info "for users migrating from pyright or pylance" - [Contributing](development-contributing.md): unlike the upstream pyright repo, we are very open to ideas for improvements and bug reports. if you've raised an iss... - [Internals](development-internals.md): *`packages/vscode-pyright/src/extension.ts`: Language Server Protocol (LSP) client entry point for VS Code extension. - [Localization notes](development-localization.md): the translations in pyright come from microsoft's localization team, who are not programmers. this not only results i... - [how we keep up-to-date with upstream](development-upstream.md): every time pyright releases a new version, we merge its release tag into basedpyright. each basedpyright version is b... - [Features](getting-started-features.md): Pyright is a fast type checker meant for large Python source bases. It can run in a “watch” mode and performs fast in... - [Getting Started](getting-started-getting-started.md): A static type checker like Pyright can add incremental value to your source code as more type information is provided. - [Type Concepts](getting-started-type-concepts.md): Getting started with static type checking in Python is easy, but it’s important to understand a few simple concepts. ... - [Index](index.md): --8<-- "README.md:header" - [Command-line & language server](installation-command-line-and-language-server.md): unlike pyright, the basedpyright CLI and language server are available as a [pypi package](https://pypi.org/project/b... - [IDEs](installation-ides.md): !!! info - [prek hook](installation-prek-hook.md): repos: - [Shoutouts](shoutouts.md): some projects that helped make basedpyright possible - [Builtins](usage-builtins.md): The Python interpreter implicitly adds a set of symbols that are available within every module even though they are n... - [Language Server Commands](usage-commands.md): basedpyright offers the following language server commands, which can be invoked from, for example, VS Code’s “Comman... - [Import Resolution](usage-import-resolution.md): If the import is relative (the module name starts with one or more dots), it resolves the import relative to the path... - [Import Statements](usage-import-statements.md): An import statement instructs the Python import loader to perform several operations. For example, the statement`fro... - [The next line raises an exception at runtime](usage-mypy-comparison.md): Mypy is the “OG” in the world of Python type checkers. It was started by Jukka Lehtosalo in 2012 with contributions f... - [Example of unconstrained type variable](usage-type-concepts-advanced.md): Pyright uses a technique called “type narrowing” to track the type of an expression based on code flow. Consider the ... - [In this example, symbol var1 has an inferred type of `str | int`.](usage-type-inference.md): In Python, a _symbol_ is any name that is not a keyword. Symbols can represent classes, functions, methods, variables... - [Type Stubs](usage-type-stubs.md): Type stubs are “.pyi” files that specify the public interface for a library. They use a variant of the Python syntax ... - [Variable with known type (unambiguous because it uses a literal assignment)](usage-typed-libraries.md): Much of Python’s popularity can be attributed to the rich collection of Python libraries available to developers. Aut...