Pydantic PyCharm Plugin🔗
A JetBrains PyCharm plugin for pydantic.
Interview🔗
I got interviewed about this plugin for JetBrains' PyCharm Blog.
Sponsors🔗
Features🔗
Implemented🔗
pydantic.BaseModel🔗
- Model-specific
__init__-signature inspection and autocompletion for subclasses ofpydantic.BaseModel - Model-specific
__init__-arguments type-checking for subclasses ofpydantic.BaseModel - Refactor support for renaming fields for subclasses of
BaseModel - (If the field name is refactored from the model definition or
__init__call keyword arguments, PyCharm will present a dialog offering the choice to automatically rename the keyword where it occurs in a model initialization call.) - Search related-fields by class attributes and keyword arguments of
__init__withCtrl+BandCmd+B - Provide an inspection for type-checking which is compatible with pydantic. the inspection supports
parsable-type. the detail is at Inspection for type-checking section - Insert unfilled arguments with a QuickFix for subclasses of
pydantic.BaseModel - Support typing.Annotated (PEP 593)
- Regex arguments in
Fieldandconstrare treated as Python's regex string literals - Config/ConfigDict support
- Auto-completion for Config/ConfigDict
- Read Model config such
frozen=Truefrom Config/ConfigDict - validator/field_validator support
- respect first argument is
clsof the method - Auto-completion for field name arguments of validator/field_validator
- Associate validator/field_validator with field
- Support refactoring/jumping
- Validate field name on validator arguments
pydantic.generics.GenericModel🔗
- Support same features as
pydantic.BaseModel - (This plugin version 0.3.1 or later)
pydantic.dataclasses.dataclass🔗
- Support same features as
pydantic.BaseModel - (After PyCharm 2020.1 and this plugin version 0.1.0, PyCharm treats
pydantic.dataclasses.dataclassas third-party dataclass.)
pydantic.create_model [experimental]🔗
- Support minimum features for a model which is created by create_model
sqlmodel.SQLModel🔗
- Support same features as
pydantic.BaseModel - (This plugin version 0.3.12 or later)
Supported Pydantic major versions🔗
- v0
- v1
- v2
Demo🔗

Quick Installation🔗
The plugin is in Jetbrains repository (Pydantic Plugin Page)
You can install the stable version on PyCharm's Marketplace (Preference -> Plugins -> Marketplace) Official Documentation
The plugin requires PyCharm 2020.2 or later (include other JetBrains IDEs)

Contribute🔗
We are waiting for your contributions to pydantic-pycharm-plugin.
Links🔗
JetBrains Plugin Page🔗
Motivation🔗
Auto-completion when instantiating BaseModel objects #650