django-tinymce
A Django application that contains a widget to render a
What it is and what it does
django-tinymce bridges Django's form and model systems with TinyMCE, a popular JavaScript rich-text editor. It provides an HTMLField model field and a corresponding form widget that render as interactive WYSIWYG editors in the Django admin and custom forms. The package handles integration with Django's staticfiles system to serve TinyMCE assets, so developers can add rich-text editing to their applications with minimal configuration.
The package is production-stable, actively maintained, and supports modern Django (4.2 through 5.2) and Python (3.9+) versions. It has a single runtime dependency on django itself, making installation straightforward. The dual MIT/GPL-2.0-or-later license means you should verify compatibility with your project's licensing before adoption.
Use it for:
- Add rich-text editing to Django model fields for blog posts, articles, or content management systems.
- Replace plain textarea inputs in custom Django forms with a full WYSIWYG editor for better user experience.
- Build admin interfaces where content creators need formatting tools (bold, italic, links, lists) without leaving Django.
- Integrate HTML editing into multi-tenant or SaaS applications built on Django without writing custom editor logic.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
django-tinymce provides a Django form widget and model field that integrates the TinyMCE 7.8.0 rich-text editor into Django applications, allowing developers to render HTML editing interfaces in forms and models.
Yes. django-tinymce is production-stable, actively maintained, has no known vulnerabilities, and solves a common need (rich-text editing in Django) with low install friction. The dual GPL/MIT license is a minor consideration—verify it aligns with your project's licensing model, but it is not a blocker for most use cases.
Install
django-tinymce on PyPI
pip
pip install django-tinymceuv
uv add django-tinymcepoetry
poetry add django-tinymceInstalling django-tinymce
Before you install
Low friction: pure Python wheel, single runtime dependency on django. Actively maintained with recent commits and no known vulnerabilities. Supports current Django versions (4.2 through 5.2) and modern Python (3.9+).
License in practice
Dual-licensed under MIT and GPL-2.0-or-later (copyleft). The GPL component means derivative works or distributions may require source disclosure; review your project's licensing constraints before use.
Quickstart
pip install django-tinymce
# In settings.py:
INSTALLED_APPS = [..., 'tinymce']
# In urls.py:
urlpatterns = [..., path('tinymce/', include('tinymce.urls'))]
# In models.py:
from tinymce.models import HTMLField
class MyModel(models.Model):
content = HTMLField()
Requires Django 4.2+ and Python 3.9+; TinyMCE assets are served via Django's staticfiles system.
Verify before relying
- Whether TinyMCE 7.8.0 is bundled or fetched at runtime, and any CDN/network requirements
- Specific configuration options available beyond the basic HTMLField and widget usage shown in the excerpt
Package facts
| License | MIT AND GPL-2.0-or-later (copyleft) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — django |
| Maintenance | actively maintained — 297 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 892,521/month — #4,800 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: django_tinymce-5.0.0-py3-none-any.whl
Keywords: django, widget, tinymce
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
django-quill-editorIntegrates Quill.js, a rich-text WYSIWYG…
permissive · top 15,000 on PyPI
django-widget-tweaksCustomize Django form field HTML and CSS in…
permissive · top 5,000 on PyPI
djangocms-text-ckeditorIntegrates CKEditor (v4.17.2) as a text editing…
permissive · top 15,000 on PyPI
django-ckeditorIntegrates CKEditor 4.18.0 rich-text editing…
permissive · top 5,000 on PyPI
django-summernoteEmbeds the Summernote WYSIWYG editor into…
permissive · top 15,000 on PyPI
django-ckeditor-5Integrates CKEditor 5, a modern rich-text…
permissive · top 15,000 on PyPI
django-multi-email-fieldProvides Django model and form fields to store…
unclear · top 15,000 on PyPI
django-json-widgetProvides a rich JSON editor widget for Django's…
permissive · top 5,000 on PyPI
django-markdownxDjango MarkdownX provides a Markdown editor…
permissive · top 15,000 on PyPI
django-aceIntegrates the ACE code editor into Django…
permissive · top 15,000 on PyPI