jsonschema-rs
A high-performance JSON Schema validator for Python
Decision gist · record as of 2026-08-14
Yes. jsonschema-rs is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and offers a significant performance advantage over pure-Python alternatives with minimal install friction on modern platforms. It is suitable for production use in validation-heavy workloads and as a drop-in replacement for jsonschema. Install it if you validate JSON frequently or need to support multiple schema drafts.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; pre-built wheels available for most platforms but may require a Rust toolchain if a wheel is unavailable for your platform.
- Medium install friction due to compiled wheels; however, wheels are pre-built for common platforms (x86_64, aarch64, i686, Windows, macOS, Linux) and Python 3.10+, so installation typically succeeds without compilation.
- Actively maintained with a release 5 days old.
License · maintenance · safety
MIT (permissive) — MIT license is permissive and imposes no significant restrictions on use, modification, or distribution in proprietary or open-source projects.
last release 2026-08-09 (5 days) · last repo commit 2026-08-14 · 803 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 6,228,579 downloads/mo, #1,951 on PyPI
Alternatives
Verify before relying
pip install jsonschema-rs
import jsonschema_rs
schema = {"maxLength": 5}
validator = jsonschema_rs.validator_for(schema)
assert validator.is_valid("foo")- Performance benchmarks comparing jsonschema-rs to pure-Python alternatives in real-world workloads
- Whether custom keyword and format validator APIs are stable or subject to breaking changes
- Support for remote schema references and network fetching behavior (mentioned but not detailed)
What it is and what it does
jsonschema-rs is a JSON Schema validator written in Rust and exposed to Python, designed for high-performance validation of JSON data against schema documents. It supports JSON Schema drafts 4, 6, 7, 2019-09, and 2020-12, with automatic draft detection or explicit draft-specific validators. The package provides multiple validation modes: one-off validation, reusable validator objects, error iteration, boolean checks, and structured output conforming to JSON Schema Output v1.
The library handles standard format validation (date, email, etc.) and allows custom format validators and keywords to be defined as Python functions or classes. It supports remote reference fetching, meta-schema validation, and schema bundling. With zero runtime dependencies and pre-built wheels for modern Python versions on common architectures, it aims to be a drop-in replacement for the pure-Python jsonschema library with significantly better performance.
Use it for
- Validate API request/response payloads against OpenAPI or JSON Schema specifications in web services
- Check configuration files or data exports conform to expected schemas before processing
- Implement domain-specific validation rules by defining custom keywords and format validators
- Migrate from pure-Python jsonschema to gain performance without changing validation logic
- Generate detailed error reports and evaluation traces for debugging schema mismatches
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
jsonschema-rs is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and offers a significant performance advantage over pure-Python alternatives with minimal install friction on modern platforms. It is suitable for production use in validation-heavy workloads and as a drop-in replacement for jsonschema. Install it if you validate JSON frequently or need to support multiple schema drafts.
Install
jsonschema-rs on PyPI
Before you install
Medium install friction due to compiled wheels; however, wheels are pre-built for common platforms (x86_64, aarch64, i686, Windows, macOS, Linux) and Python 3.10+, so installation typically succeeds without compilation. Actively maintained with a release 5 days old.
Requires Python 3.10 or later; pre-built wheels available for most platforms but may require a Rust toolchain if a wheel is unavailable for your platform.
License in practice
MIT license is permissive and imposes no significant restrictions on use, modification, or distribution in proprietary or open-source projects.
Quickstart
pip install jsonschema-rs
import jsonschema_rs
schema = {"maxLength": 5}
validator = jsonschema_rs.validator_for(schema)
assert validator.is_valid("foo")
Verify before relying
- Performance benchmarks comparing jsonschema-rs to pure-Python alternatives in real-world workloads
- Whether custom keyword and format validator APIs are stable or subject to breaking changes
- Support for remote schema references and network fetching behavior (mentioned but not detailed)
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 5 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 6,228,579 / month, #1,951 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.15Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyProgramming Language :: RustTopic :: File Formats :: JSON :: JSON Schema |
Evidence: jsonschema_rs-0.49.9-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl; jsonschema_rs-0.49.9-cp310-abi3-macosx_10_12_x86_64.whl; jsonschema_rs-0.49.9-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl; jsonschema_rs-0.49.9-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; jsonschema_rs-0.49.9-cp310-abi3-manylinux_2_28_aarch64.whl; jsonschema_rs-0.49.9-cp310-abi3-musllinux_1_2_aarch64.whl; jsonschema_rs-0.49.9-cp310-abi3-musllinux_1_2_x86_64.whl; jsonschema_rs-0.49.9-cp310-abi3-win32.whl; jsonschema_rs-0.49.9-cp310-abi3-win_amd64.whl; jsonschema_rs-0.49.9-cp314-cp314t-macosx_10_12_x86_64.whl; jsonschema_rs-0.49.9-cp314-cp314t-macosx_11_0_arm64.whl; jsonschema_rs-0.49.9-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; jsonschema_rs-0.49.9-cp314-cp314t-manylinux_2_28_aarch64.whl; jsonschema_rs-0.49.9-cp314-cp314t-musllinux_1_2_aarch64.whl; jsonschema_rs-0.49.9-cp314-cp314t-musllinux_1_2_x86_64.whl; jsonschema_rs-0.49.9-cp314-cp314t-win_amd64.whl; jsonschema_rs-0.49.9-cp315-cp315t-macosx_10_12_x86_64.whl; jsonschema_rs-0.49.9-cp315-cp315t-macosx_11_0_arm64.whl; jsonschema_rs-0.49.9-cp315-cp315t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; jsonschema_rs-0.49.9-cp315-cp315t-manylinux_2_28_aarch64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “json schema validator”
- jsonschema-rsjsonschema-rs validates JSON data against JSON Schema documents using…
- openapi-schema-validatorValidates data and schemas against OpenAPI Schema Specification…
- fastjsonschemaValidates JSON data against JSON Schema specifications using compiled…
Give your agent the search over MCP, or paste the wish link into any chat.
More JSON packages
jsonschema validates Python data structures against JSON Schema specifications, raising exceptions when validation fails or iterating through all errors found.
Install it if you need to validate JSON or JSON-like data structures.
Resolves JSON references according to JSON Schema and related specifications, providing a standard way to handle $ref pointers in JSON documents.
Provides JSON Schema metaschemas, vocabularies, and specification files packaged as a Python-accessible Registry for runtime schema validation and reference resolution.
Install it if you are building validation tooling or using a validator that depends on it; it adds negligible friction.
A fast JSON parser that converts bytes into Python objects, offering tuning options for string caching, partial parsing, duplicate key detection, and float representation.
Install only if performance or parsing control (partial mode, duplicate detection, float precision) matters for your use case.
Generates country- and subdivision-specific government holiday calendars on demand, supporting 250 country codes with optional language localization and holiday categories.
GenSON generates JSON Schema documents from JSON objects and can merge multiple schemas together, inferring a unified schema that describes the common structure of your data.
See also jschon · pycsvschema · check-jsonschema · eido · jsonschema-pydantic · marshmallow-jsonschema · xmlschema · validator-collection · jq