skillfed

django-ckeditor

Django admin CKEditor integration.

django-ckeditor v6.7.3 831.4K downloads/30d#4,944 on PyPI2,457
Permissive license AGING released

What it is and what it does

django-ckeditor provides Django form fields and widgets that wrap CKEditor 4.18.0, a JavaScript rich-text editor, for use in Django admin and custom forms. It includes image upload and browsing capabilities, works with django-storages (including S3), and bundles CKEditor language and plugin files. The package requires Django and django-js-asset as runtime dependencies and must be added to INSTALLED_APPS with static files collected via Django's collectstatic command.

The maintainer has published a deprecation notice stating that CKEditor 4 has unfixed security issues and recommends against new use of this package. While the repository remains active and supports modern Django (3.2–5.2) and Python (3.8–3.13) versions, prospective users should evaluate alternatives listed on Django Packages before adopting it for new projects.

Use it for:

  • Add rich-text editing to Django admin model forms without writing custom JavaScript.
  • Enable image upload and browsing in user-generated content fields with optional per-user access restrictions.
  • Integrate CKEditor into custom Django forms with configurable toolbars and plugins.
  • Store rich-text content in database fields with automatic HTML rendering support.
  • Use S3 or other django-storages backends for uploaded media instead of local filesystem.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Integrates CKEditor 4.18.0 rich-text editing into Django admin and forms, with image upload and browsing support via django-js-asset.

No—the maintainer explicitly recommends against using this package due to unfixed security issues in the underlying CKEditor 4 library. While the package itself has low install friction and broad Django/Python support, the deprecation notice and security concerns outweigh its convenience. Evaluate alternatives on Django Packages before committing to a new project.

Install

django-ckeditor on PyPI

pip

pip install django-ckeditor

uv

uv add django-ckeditor

poetry

poetry add django-ckeditor

Installing django-ckeditor

Before you install

Low install friction with two runtime dependencies. Maintenance status is aging—last release was 434 days ago, though the repository remains active and supported across Django 3.2 through 5.2 and Python 3.8–3.13.

License in practice

Permissive license allows broad use and modification. No specific SPDX or raw license text provided in metadata, but classifier indicates BSD-compatible terms.

Quickstart

pip install django-ckeditor

# In settings.py
INSTALLED_APPS = ['ckeditor', ...]

# In models.py
from ckeditor.fields import RichTextField
class Article(models.Model):
    content = RichTextField()

Requires running `./manage.py collectstatic` to copy CKEditor static assets. May need manual CKEDITOR_BASEPATH configuration when using asset pipelines or ManifestStaticFilesStorage.

Verify before relying

  • Maintainer's deprecation notice recommends against new use due to unfixed CKEditor 4 security issues—current OSV query shows zero recorded vulnerabilities, but this may not reflect all known issues.
  • Whether the package's own code has been audited for security beyond the underlying CKEditor 4.18.0 library.

Package facts

License not declared (permissive)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 2 — Django, django-js-asset
Maintenance aging — 434 days since the last release
Last repo commit
First released
Downloads 831,384/month — #4,944 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: django_ckeditor-6.7.3-py3-none-any.whl

Framework :: DjangoFramework :: Django :: 3.2Framework :: Django :: 4.1Framework :: Django :: 4.2Framework :: Django :: 5.0Framework :: Django :: 5.1Framework :: Django :: 5.2Intended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Internet :: WWW/HTTP :: Dynamic Content

Tags

django rich text editorckeditor django integrationdjango wysiwyg editordjango admin text editordjango image upload editorrich text field django
django-integrationdeprecated-upstream

More Dynamic Content packages