drf-jsonschema-serializer
JSON Schema support for Django REST Framework
Decision gist · record as of 2026-08-14
Yes, if you are building a Django REST API that needs to share schema-based validation with a client-side form library or accept flexible JSON payloads. The low install friction and permissive license make it a safe choice. However, the aging maintenance status (779 days since last release) means it is best suited to stable projects that do not require frequent updates or rapid bug fixes. Check that your versions of django and djangorestframework are compatible before adopting.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; django, djangorestframework, and jsonschema must be installed.
- Low install friction with a pure-Python wheel.
- Maintenance status is aging—last release was 779 days ago, though the repository remains active with a recent commit on 2025-05-14.
License · maintenance · safety
permissive license (permissive) — BSD license (permissive). You may use, modify, and distribute this package freely in commercial and private projects, provided you retain the copyright notice and disclaimer.
last release 2024-06-26 (779 days) · last repo commit 2025-05-14 · 46 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 168,495 downloads/mo, #10,446 on PyPI
Alternatives
Verify before relying
pip install drf-jsonschema-serializer
from drf_jsonschema_serializer.fields import JSONSchemaField
class MySerializer:
data = JSONSchemaField(schema={"type": "object"})- Specific versions of django and djangorestframework supported beyond Django 4.2.
- Performance characteristics with large or deeply nested JSON schemas.
- Whether react-jsonschema-form integration is documented or requires custom glue code.
What it is and what it does
drf-jsonschema-serializer bridges Django REST Framework serializers and JSON Schema, allowing you to use the same validation rules on both client and server. It provides a converter that turns a DRF serializer into a JSON Schema representation, and field types that validate incoming JSON data against a schema or serializer definition. This is useful when you want to generate client-side forms dynamically from your server-side serializer definitions, or when you need to accept and validate arbitrary JSON payloads that conform to a known schema.
The package depends on django, djangorestframework, and jsonschema. It is stable (Production/Stable status) and supports Python 3.10, 3.11, and 3.12. Maintenance has slowed—the last release was 779 days ago—but the repository remains open and not archived, suggesting it is suitable for projects that do not require frequent updates.
Use it for
- Generate web forms dynamically from DRF serializers using client-side libraries.
- Validate JSON payloads in REST endpoints against a predefined JSON Schema without custom logic.
- Accept flexible JSON structures in a single field while maintaining schema-based validation.
- Share validation rules between a Django backend and a frontend form library to keep them in sync.
- Build APIs that accept polymorphic or nested JSON data with schema-driven validation.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are building a Django REST API that needs to share schema-based validation with a client-side form library or accept flexible JSON payloads.
The low install friction and permissive license make it a safe choice. However, the aging maintenance status (779 days since last release) means it is best suited to stable projects that do not require frequent updates or rapid bug fixes. Check that your versions of django and djangorestframework are compatible before adopting.
Install
drf-jsonschema-serializer on PyPI
Before you install
Low install friction with a pure-Python wheel. Maintenance status is aging—last release was 779 days ago, though the repository remains active with a recent commit on 2025-05-14. Suitable for stable, established projects but not for rapid iteration.
Requires Python 3.10 or later; django, djangorestframework, and jsonschema must be installed.
License in practice
BSD license (permissive). You may use, modify, and distribute this package freely in commercial and private projects, provided you retain the copyright notice and disclaimer.
Quickstart
pip install drf-jsonschema-serializer
from drf_jsonschema_serializer.fields import JSONSchemaField
class MySerializer:
data = JSONSchemaField(schema={"type": "object"})
Verify before relying
- Specific versions of django and djangorestframework supported beyond Django 4.2.
- Performance characteristics with large or deeply nested JSON schemas.
- Whether react-jsonschema-form integration is documented or requires custom glue code.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packagesdjangodjangorestframeworkjsonschema |
| Maintenance | Aging 779 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 168,495 / month, #10,446 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableFramework :: DjangoFramework :: Django :: 4.2Intended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: UnixProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Topic :: Software Development :: Libraries :: Python Modules |
Evidence: drf_jsonschema_serializer-3.0.0-py3-none-any.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 › “django rest framework json schema”
- drf-jsonschema-serializerConverts Django REST Framework serializers to JSON Schema and…
- drf-spectacular-jsonapiGenerates OpenAPI 3 schemas for Django REST Framework APIs that use…
- django-pydantic-fieldProvides type-safe Pydantic model schemas for Django JSONFields with…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also django-typomatic · marshmallow-jsonschema · drf-recaptcha · drf-dynamic-fields · sentry-kafka-schemas · drf-pydantic · drf-exceptions-hog · jsonschema · voluptuous-serialize · drf-standardized-errors