A zero-dependency, CSP-strict, bidirectional rich-text editor for Django.
Project description
Jalgo-editor
A zero-dependency, CSP-strict, bidirectional rich-text editor that feels like Notion but lives natively inside the Django Admin.
Why Jalgo?
Right now, if a Django developer wants a rich-text editor, they have to compromise:
- CKEditor / TinyMCE: Bloated, and fails strict Content Security Policies (CSP) because they inject
style="..."everywhere. - Editor.js: Block-based, making mixed-language typing (Persian and English in the same article) a frustrating experience.
- Tiptap/ProseMirror: Requires NPM, React/Vue, and complex build pipelines.
Jalgo-editor is the anti-bloat editor. It is a pure Python and Vanilla JavaScript package that drops into any Django project instantly. No NPM, no build steps, no external CSS frameworks required.
Killer Features
- Smart Bi-Directional (Bidi) Engine: Users don't click an "RTL" or "LTR" button. The editor automatically detects the language of every new paragraph natively applying
dir="rtl"to Persian/Arabic blocks, anddir="ltr"to English. - 100% CSP Compliant (Bank-Grade Security): Zero inline styles. Formatting is strictly semantic. A robust backend Python parser completely strips bad formatting on save.
- The "Zen" Interface: Bubble Menus, Slash Commands (
/), and a beautiful glassmorphism design that fully respects Django's Light/Dark modes. - Built-in SEO Tools & Code View: Real-time word counts, reading time, heading hierarchy validators, and a zero-dependency Syntax-Highlighted Code Editor built right in.
Installation
Install using pip:
pip install jalgo-editor
Add to your INSTALLED_APPS in settings.py:
INSTALLED_APPS = [
# ...
"jalgo_editor",
]
Usage
Simply swap your standard models.TextField with FluidTextField:
from django.db import models
from jalgo_editor.fields import FluidTextField
class Article(models.Model):
title = models.CharField(max_length=200)
content = FluidTextField() # Automatically renders the Notion-style editor
No widget configuration needed! It will seamlessly appear in your Django Admin with beautiful Glassmorphism styling and dark-mode support.
Monetizable Extensions (Premium API)
Jalgo-editor includes configuration hooks for premium integrations:
JALGO_AI_LICENSE_KEY: Unlocks the/aiautocomplete translation and phrasing engine inside the bubble menu.JALGO_CDN_TOKEN: Bypasses your local media storage to automatically drag-and-drop upload and WebP-optimize images to the Jalgo CDN.
License
MIT License
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jalgo_editor-0.1.0.tar.gz.
File metadata
- Download URL: jalgo_editor-0.1.0.tar.gz
- Upload date:
- Size: 12.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8dc26b1d27394eebbdd916b0c83a416bf82b3aa56c3245a40a50a999f79c7c0
|
|
| MD5 |
28095e21a943f05e55e0187e16bc3d75
|
|
| BLAKE2b-256 |
d7fe2453716351569dd3c5a11c1c7d581ae038c99793ee98d4f4d7f411f3a279
|
Provenance
The following attestation bundles were made for jalgo_editor-0.1.0.tar.gz:
Publisher:
publish.yml on iamjalipo/Jalgo-editor
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jalgo_editor-0.1.0.tar.gz -
Subject digest:
e8dc26b1d27394eebbdd916b0c83a416bf82b3aa56c3245a40a50a999f79c7c0 - Sigstore transparency entry: 1733071547
- Sigstore integration time:
-
Permalink:
iamjalipo/Jalgo-editor@7bd9ae8e1b7973486fa41bf0a4b63a304f765cd5 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/iamjalipo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@7bd9ae8e1b7973486fa41bf0a4b63a304f765cd5 -
Trigger Event:
push
-
Statement type:
File details
Details for the file jalgo_editor-0.1.0-py3-none-any.whl.
File metadata
- Download URL: jalgo_editor-0.1.0-py3-none-any.whl
- Upload date:
- Size: 12.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d50fb74cfc4cece821bb7f2b5818be741c478ee5e1997813659efa1a9d69abe
|
|
| MD5 |
7841ca06bb8c065ae997e1388e5c8560
|
|
| BLAKE2b-256 |
11e3652255afda02be594a60d45315e23cc5740c9e3f4da6a19b2314e8d86d6b
|
Provenance
The following attestation bundles were made for jalgo_editor-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on iamjalipo/Jalgo-editor
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jalgo_editor-0.1.0-py3-none-any.whl -
Subject digest:
2d50fb74cfc4cece821bb7f2b5818be741c478ee5e1997813659efa1a9d69abe - Sigstore transparency entry: 1733071571
- Sigstore integration time:
-
Permalink:
iamjalipo/Jalgo-editor@7bd9ae8e1b7973486fa41bf0a4b63a304f765cd5 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/iamjalipo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@7bd9ae8e1b7973486fa41bf0a4b63a304f765cd5 -
Trigger Event:
push
-
Statement type: