quill-delta
Python port of the quill.js delta library that enables operational transformation with aditional functionality for rendering html
What it is and what it does
quill-delta is a Python port of the QuillJS delta library, implementing operational transformation for rich-text document operations. It allows you to represent and manipulate document changes as a series of insert, delete, and retain operations—the core data model used by Quill, a popular JavaScript rich-text editor. The library includes an optional HTML rendering module that converts Delta operation lists into rendered HTML, enabling server-side rendering of Quill editor content.
The package is straightforward to install and has minimal dependencies (only diff-match-patch at runtime). However, it is no longer maintained: the last release was in October 2020 and the last repository commit in January 2022. While the library is marked as Production/Stable and works for its stated purpose, you should treat it as a snapshot rather than an actively supported tool. It is suitable for projects that need to work with existing Delta documents or render Quill content server-side, but not for projects expecting ongoing compatibility updates.
Use it for:
- Render Quill editor content to HTML on a Python backend server without running JavaScript.
- Store and manipulate rich-text document operations in a Python application using the Delta format.
- Implement operational transformation logic for collaborative editing features in Python.
- Convert Delta operation lists into plain HTML for archival, export, or display purposes.
- Build a Python service that processes or transforms Quill editor documents.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Implements operational transformation for Quill Delta documents and can render Delta operations to HTML, providing a Python port of the QuillJS delta library.
Yes, if you need to work with Quill Delta documents or render Delta operations to HTML in Python and can accept that the package is no longer maintained. The code is stable and has no known vulnerabilities, but do not expect bug fixes or Python version compatibility updates. For new projects, consider whether an actively maintained alternative exists or whether you can rely on the JavaScript library directly.
Install
quill-delta on PyPI
pip
pip install quill-deltauv
uv add quill-deltapoetry
poetry add quill-deltaInstalling quill-delta
Before you install
Low install friction with a single runtime dependency (diff-match-patch). However, the package is abandoned—last release was 2020-10-20 and last commit 2022-01-18—so expect no maintenance or updates for issues or compatibility with newer Python versions.
License in practice
MIT license is permissive and places no restrictions on use, modification, or distribution in commercial or private projects.
Quickstart
pip install quill-delta
from delta import html
ops = [{"insert": "Hello"}, {"insert": "world", "attributes": {"bold": True}}]
html.render(ops)
Requires Python 3.6 or later; HTML rendering requires the optional [html] extra.
Verify before relying
- Whether diff-match-patch dependency has known vulnerabilities or maintenance issues that could affect quill-delta users.
- Current compatibility with Python 3.10+ given the package's abandoned status and last tested version being 3.9.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.6,<4.0) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — diff-match-patch |
| Maintenance | abandoned — 2,124 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 107,951/month — #12,586 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: quill_delta-1.0.3-py3-none-any.whl
Tags
More Markup packages
PyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
markdown-it-pyA Python markdown parser that converts markdown…
permissive · top 100 on PyPI
beautifulsoup4Beautiful Soup parses HTML and XML documents…
permissive · top 100 on PyPI
et-xmlfileet_xmlfile writes large XML files with minimal…
permissive · top 1,000 on PyPI
tomlkitParses and edits TOML files while preserving…
permissive · top 1,000 on PyPI
docstring-parserParses Python docstrings in ReST, Google,…
permissive · top 1,000 on PyPI
django-quill-editorIntegrates Quill.js, a rich-text WYSIWYG…
permissive · top 15,000 on PyPI
streamlit-quillEmbeds a React Quill rich-text editor component…
unclear · top 15,000 on PyPI
draftjs_exporterConverts Draft.js ContentState (a rich text…
permissive · top 5,000 on PyPI
mammothConverts Microsoft Word .docx documents to…
permissive · top 5,000 on PyPI
slackify-markdownConverts standard Markdown to Slack-compatible…
permissive · top 15,000 on PyPI
htmlBuilderRender HTML by writing Python code, using…
permissive · top 15,000 on PyPI
mjmlConverts MJML (a markup language for responsive…
permissive · top 15,000 on PyPI
deltalakeDeltalake provides native Python bindings to…
permissive · top 1,000 on PyPI
django-ckeditor-5Integrates CKEditor 5, a modern rich-text…
permissive · top 15,000 on PyPI
django-tinymcedjango-tinymce provides a Django form widget…
copyleft · top 5,000 on PyPI