django-jsonfield
JSONField for django models
What it is and what it does
django-jsonfield is a Django model field that stores JSON-encodable Python objects (dicts, lists, strings) as text in the database and automatically deserializes them back to Python on retrieval. It was created in 2010 to fill a gap when databases lacked native JSON support, but that landscape has changed significantly.
The package is now in maintenance-only mode and explicitly abandoned. Django 3.1 (released August 2020) introduced a native cross-database JSONField that supersedes this library. The maintainer recommends using either Django 3.1's built-in field, the django-jsonfield-backport package for older Django versions, or simply storing JSON in a TextField if you don't need database-level querying of JSON contents.
Use it for:
- Storing flexible, schema-less JSON data in Django models on older Django versions (pre-3.1) that lack native JSONField support.
- Migrating legacy projects that already use this field and cannot yet upgrade to Django 3.1+.
- Adding a jsonify template tag to convert Python data structures to JSON within Django templates with XSS protection.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a JSONField for Django models that stores JSON-encodable objects in the database and deserializes them on retrieval.
No. The package is abandoned (last commit June 2021, repository archived) and the maintainer explicitly recommends against using it on new projects. Use Django 3.1's native JSONField instead, or django-jsonfield-backport for older Django versions. Only install if maintaining legacy code already using this field.
Install
django-jsonfield on PyPI
pip
pip install django-jsonfielduv
uv add django-jsonfieldpoetry
poetry add django-jsonfieldInstalling django-jsonfield
Before you install
Low install friction with only Django and six as runtime dependencies. However, the package is abandoned as of June 2021 and explicitly not recommended for new projects—Django 3.1+ includes a native cross-database JSONField that should be used instead.
License in practice
Licensed under BSD (permissive), so no legal restrictions on use, but the abandoned status and explicit recommendation against new projects should weigh more heavily than the license.
Quickstart
pip install django-jsonfield
from django.db import models
import jsonfield
class MyModel(models.Model):
the_json = jsonfield.JSONField()
Requires Django 1.8 or later; not compatible with Django 3.1+ without conflicts (see issue #5 regarding django.contrib.postgres.fields.JSONField interference).
Verify before relying
- Whether the package works reliably with modern Django versions beyond 2.2 (last tested version mentioned in history).
- Current state of compatibility with Python 3.8+ given the package's age and abandoned status.
Package facts
| License | not declared (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — Django, six |
| Maintenance | abandoned — 2,116 days since the last release |
| Last repo commit | (repository archived) |
| First released | |
| Downloads | 125,407/month — #11,821 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: django_jsonfield-1.4.1-py2.py3-none-any.whl
Tags
More Database packages
psycopg2-binary is a PostgreSQL database…
copyleft · top 1,000 on PyPI
redisPython client library for connecting to and…
permissive · top 1,000 on PyPI
ydbYDB Python SDK is the official client library…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
sqlparsesqlparse tokenizes SQL text into a tree of…
permissive · top 1,000 on PyPI
dbt-adaptersProvides base adapter protocols and shared…
permissive · top 1,000 on PyPI
jsonfieldA Django model field that stores and retrieves…
permissive · top 5,000 on PyPI
SQLAlchemy-JSONFieldProvides a SQLAlchemy column type for storing…
permissive · top 5,000 on PyPI
django-mysqlDjango-MySQL extends Django's ORM with MySQL…
permissive · top 15,000 on PyPI
django-jsoneditorProvides a Django form widget for editing JSON…
unclear · top 15,000 on PyPI
django-json-widgetProvides a rich JSON editor widget for Django's…
permissive · top 5,000 on PyPI
django-prettyjsonAdds a collapsible, interactive JSON viewer…
permissive · top 15,000 on PyPI
djangorestframework-gisAdds geographic and GeoJSON support to Django…
permissive · top 15,000 on PyPI
django-jsonformProvides a user-friendly JSON editing form…
permissive · top 15,000 on PyPI
django-timezone-fieldProvides Django database, form, and REST…
permissive · top 5,000 on PyPI