{ "info": { "author": "Agus Makmun (Summon Agus)", "author_email": "agus@python.web.id", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.10", "Framework :: Django :: 1.8", "Framework :: Django :: 1.9", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: JavaScript", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.5", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "draceditor |pypi version|\n------------------------------\n\n.. |pypi version|\n image:: https://img.shields.io/pypi/v/draceditor.svg?style=flat-square\n :target: https://pypi.python.org/pypi/draceditor\n\n.. image:: https://img.shields.io/badge/license-GNUGPLv3-blue.svg?style=flat-square\n :target: https://raw.githubusercontent.com/agusmakmun/draceditor/master/LICENSE\n\n.. image:: https://img.shields.io/pypi/pyversions/draceditor.svg?style=flat-square\n :target: https://pypi.python.org/pypi/draceditor\n\n.. image:: https://img.shields.io/badge/Django-1.8,%201.9,%201.10-green.svg?style=flat-square\n :target: https://www.djangoproject.com\n\n.. image:: https://img.shields.io/pypi/dm/draceditor.svg?style=flat-square\n :target: https://pypi.python.org/pypi/draceditor\n\n\n**DracEditor** is Django Markdown Editor built for Dracos Linux *(https://dracos-linux.org)*.\nDemo video: https://youtu.be/DZCZD7Y8P0Y\n\n\nFeatures\n------------------------------\n\n* Integrated with `Ace Editor`_\n* Integrated with `Semantic-UI`_\n* Live Preview\n* Upload Image to imgur.com `(via API)`\n* Emoji ``:emoji_name:`` + Cheat sheet\n* Direct Mention users ``@[username]`` - `(require user to logged in)`\n* Highlight ``pre``\n* Django Admin support\n* Toolbar Buttons\n\n\nPreview\n------------------------------\n\n.. image:: https://raw.githubusercontent.com/agusmakmun/dracos-markdown-editor/master/__screenshot/draceditor-preview.png\n\n\nRequirements\n------------------------------\n\n* ``Django>=1.10.1``\n* ``Markdown>=2.6.7``\n* ``requests>=2.12.4``\n\n\nInstallation\n------------------------------\n\nDracEditor is available directly from `PyPI`_:\n\n1. Installing the package.\n\n::\n\n $ pip install draceditor\n\n\n2. Don't forget to add ``'draceditor'`` to your ``'INSTALLED_APPS'`` setting `(without migrations)`.\n\n::\n\n # settings.py\n INSTALLED_APPS = [\n ....\n 'draceditor',\n ]\n\n\n3. Add url pattern to your ``urls.py.``\n\n::\n\n # urls.py\n urlpatterns = [\n ...\n url(r'^draceditor/', include('draceditor.urls')),\n ]\n\n\n4. Collect included some draceditor static files to your ``STATIC_ROOT`` folder.\n\n::\n\n ./manage.py collectstatic\n\n\nSetting Configurations ``settings.py``\n---------------------------------------\n\nPlease register application in https://api.imgur.com/oauth2/addclient\nto get ``IMGUR_CLIENT_ID`` and ``IMGUR_API_KEY``.\n\nCheck this setting is not set else csrf will not be sent over ajax calls\n::\n CSRF_COOKIE_HTTPONLY = False\n\n::\n\n # Global draceditor settings\n # Input: string boolean, `true/false`\n DRACEDITOR_ENABLE_CONFIGS' = {\n 'imgur': 'true', # to enable/disable imgur/custom uploader.\n 'mention': 'false', # to enable/disable mention\n 'jquery': 'true', # to include/revoke jquery (require for admin default django)\n }\n\n # Imgur API Keys\n DRACEDITOR_IMGUR_CLIENT_ID = 'your-client-id'\n DRACEDITOR_IMGUR_API_KEY = 'your-api-key'\n\n # Safe Mode\n DRACEDITOR_MARKDOWN_SAFE_MODE = True # default\n\n # Markdownify\n DRACEDITOR_MARKDOWNIFY_FUNCTION = 'draceditor.utils.markdownify' # default\n DRACEDITOR_MARKDOWNIFY_URL = '/draceditor/markdownify/' # default\n\n # Markdown extensions (default)\n DRACEDITOR_MARKDOWN_EXTENSIONS = [\n 'markdown.extensions.extra',\n 'markdown.extensions.nl2br',\n 'markdown.extensions.smarty',\n 'markdown.extensions.fenced_code',\n\n # Custom markdown extensions.\n 'draceditor.extensions.urlize',\n 'draceditor.extensions.del_ins', # ~~strikethrough~~ and ++underscores++\n 'draceditor.extensions.mention', # require for mention\n 'draceditor.extensions.emoji', # require for emoji\n ]\n\n # Markdown Extensions Configs\n DRACEDITOR_MARKDOWN_EXTENSION_CONFIGS = {}\n\n # Markdown urls\n DRACEDITOR_UPLOAD_URL = '/draceditor/uploader/' # default\n DRACEDITOR_SEARCH_USERS_URL = '/draceditor/search-user/' # default\n\n # Markdown Extensions\n DRACEDITOR_MARKDOWN_BASE_EMOJI_URL = 'https://assets-cdn.github.com/images/icons/emoji/' # default\n DRACEDITOR_MARKDOWN_BASE_MENTION_URL = 'https://forum.dracos-linux.org/profile/' # default (change this)\n\nUsage\n------------------------------\n\n**Model**\n\n::\n\n from django.db import models\n from draceditor.models import DraceditorField\n\n class Post(models.Model):\n description = DraceditorField()\n\n\n**Form**\n\n::\n\n from django import forms\n from draceditor.fields import DraceditorFormField\n\n class PostForm(forms.Form):\n description = DraceditorFormField()\n\n\n**Admin**\n\n::\n\n from django.db import models\n from django.contrib import admin\n\n from draceditor.widgets import AdminDraceditorWidget\n\n from yourapp.models import YourModel\n\n class YourModelAdmin(admin.ModelAdmin):\n formfield_overrides = {\n models.TextField: {'widget': AdminDraceditorWidget},\n }\n\n admin.site.register(YourModel, YourModelAdmin)\n\n\n**Template**\n\nSimply safe the markdown content as html ouput with loading the templatetags from ``draceditor/templatetags/dractags.py``.\n\n::\n\n {% load dractags %}\n {{ field_name|safe_markdown }}\n\n # example\n {{ post.description|safe_markdown }}\n\n\nCustom Uploader\n-----------------\n\nIf you want to save the images uploaded to your storage,\n**DracEditor** also provide to handle it. Please checkout this `WIKI`_.\n\nTest Draceditor from this Repository\n-------------------------------------\n\nI assume you already setup with virtual enviroment (virtualenv).\n\n::\n\n $ git clone https://github.com/agusmakmun/dracos-markdown-editor.git\n $ cd dracos-markdown-editor/ && python setup.py install\n $ cd draceditor_demo/\n $ python manage.py makemigrations && python manage.py migrate\n $ python manage.py runserver\n\n\nAnd let checkout at http://127.0.0.1:8000/simple-form/ to your browser.\n\n\nDraceditor Commands Refference\n--------------------------------\n\n.. image:: https://raw.githubusercontent.com/agusmakmun/dracos-markdown-editor/master/__screenshot/draceditor-guide.png\n\n\nNotes\n--------------------------------\n\n**DracEditor** was inspired by great `django-markdownx`_, `Python Markdown`_ and `Online reStructuredText editor`_.\n\n\n.. _Ace Editor: https://ace.c9.io\n.. _Semantic-UI: http://semantic-ui.com\n.. _PyPI: https://pypi.python.org/pypi/draceditor\n.. _django-markdownx: https://github.com/adi-/django-markdownx\n.. _Python Markdown: https://github.com/waylan/Python-Markdown\n.. _Online reStructuredText editor: http://rst.ninjs.org\n.. _WIKI: https://github.com/agusmakmun/dracos-markdown-editor/wiki\n", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/agusmakmun/djipsum/tarball/v1.1.8", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/agusmakmun/dracos-markdown-editor", "keywords": "draceditor", "license": "GNUGPL-v3", "maintainer": "", "maintainer_email": "", "name": "draceditor", "package_url": "https://pypi.org/project/draceditor/", "platform": "", "project_url": "https://pypi.org/project/draceditor/", "project_urls": { "Download": "https://github.com/agusmakmun/djipsum/tarball/v1.1.8", "Homepage": "https://github.com/agusmakmun/dracos-markdown-editor" }, "release_url": "https://pypi.org/project/draceditor/1.1.8/", "requires_dist": null, "requires_python": "", "summary": "Django Markdown Editor built for Dracos Linux https://dracos-linux.org", "version": "1.1.8" }, "last_serial": 2779204, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "1548b07e3b6d4aa8f49c7ba8f4fe9fa7", "sha256": "8ae55cf06c6c1f92ea3a479f685efdb6c4f48a58b4c48551b60a7ec0ed45fb97" }, "downloads": -1, "filename": "draceditor-1.0.0.tar.gz", "has_sig": false, "md5_digest": "1548b07e3b6d4aa8f49c7ba8f4fe9fa7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 596698, "upload_time": "2016-12-28T04:16:44", "url": "https://files.pythonhosted.org/packages/e7/66/9026651d8106f4299d145526a7c1b080b60609e12f6fc278d460703c4ae0/draceditor-1.0.0.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "e29589288bc5f2ceea51ba12d913bd73", "sha256": "8d462edfe177930d4aab56c6b5ab188837ccbc162007312518c253cda3930763" }, "downloads": -1, "filename": "draceditor-1.0.2.tar.gz", "has_sig": false, "md5_digest": "e29589288bc5f2ceea51ba12d913bd73", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 913981, "upload_time": "2016-12-30T13:00:08", "url": "https://files.pythonhosted.org/packages/db/78/df02dc2c8c76454e8e9c730b31391a1f0635a20b28fc3ec1aa846ea1d94d/draceditor-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "b1d429fd7a542a9d1379c1448a7d4f49", "sha256": "41f4ec75768f3b86df25bf2bd8d1737121f8007b8656549aefd1d81f33999d12" }, "downloads": -1, "filename": "draceditor-1.0.3.tar.gz", "has_sig": false, "md5_digest": "b1d429fd7a542a9d1379c1448a7d4f49", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 914443, "upload_time": "2016-12-31T08:03:56", "url": "https://files.pythonhosted.org/packages/1b/cc/7f4a24a9729dbecd6f52608b44cd163c9129431d1644876266d24dbfdc8b/draceditor-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "68523e46648679fb7619527e772781af", "sha256": "eb6ba70908e88ac35365fe29efe3bf7fd0a7397085380f84817e60973d91e9b4" }, "downloads": -1, "filename": "draceditor-1.0.4.tar.gz", "has_sig": false, "md5_digest": "68523e46648679fb7619527e772781af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 911296, "upload_time": "2017-01-01T04:50:44", "url": "https://files.pythonhosted.org/packages/e3/2d/1590a290c88c3079c8b07b2614cf24b8a63311a0b48b5a17a4de1ea8bb4a/draceditor-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "b2907ac7e8d4a22b199518956367226c", "sha256": "3a0b482c7ec8b6099d76bca844843449073008f83c120dec52e6ab351bbedd18" }, "downloads": -1, "filename": "draceditor-1.0.5.tar.gz", "has_sig": false, "md5_digest": "b2907ac7e8d4a22b199518956367226c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 911506, "upload_time": "2017-01-01T12:34:56", "url": "https://files.pythonhosted.org/packages/54/73/6f48d4a8cf042c09966d098b04017e3403b8bfb84bbf5016b7c14a364573/draceditor-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "8718ba19579f03f0f9555faf1252f57d", "sha256": "bfec7d87dbcc0c1c7c70fca7e553a2a79b4e8a2c4bf0643b26546fd0ea99ba4b" }, "downloads": -1, "filename": "draceditor-1.0.6.tar.gz", "has_sig": false, "md5_digest": "8718ba19579f03f0f9555faf1252f57d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 908146, "upload_time": "2017-01-01T16:50:57", "url": "https://files.pythonhosted.org/packages/ec/e1/ce202bd29378a25cf058f4279175c90626d1f0892eed0d2beb66aa212733/draceditor-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "31334fe444bbd966c45dee8823221a47", "sha256": "58543b986f4da524e425bb419d61a8f3fe4a267cd610d6cbfa09c89520391ff1" }, "downloads": -1, "filename": "draceditor-1.0.7.tar.gz", "has_sig": false, "md5_digest": "31334fe444bbd966c45dee8823221a47", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 908648, "upload_time": "2017-01-01T21:14:21", "url": "https://files.pythonhosted.org/packages/dd/6b/52749e31e1cb622880bfee571d89c2f5f6734703f47a958ed64cc536f39a/draceditor-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "97d65dcf6826c81ad2ba021d7bde2985", "sha256": "db133f71217970d06b1b137a0718b76c0985730b2317e1cf363416e276979149" }, "downloads": -1, "filename": "draceditor-1.0.8.tar.gz", "has_sig": false, "md5_digest": "97d65dcf6826c81ad2ba021d7bde2985", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 909162, "upload_time": "2017-01-02T13:42:07", "url": "https://files.pythonhosted.org/packages/0c/19/020d3efb4084fc1e60acbba76bcb6ad0f0dfb04b203ef446883a98693fb2/draceditor-1.0.8.tar.gz" } ], "1.0.9": [ { "comment_text": "", "digests": { "md5": "4f7f1099e277659214e644219123ff14", "sha256": "6a0ab15b8061f1f88888b988826726601af7d70cdc769751d7e4c88e1968c40e" }, "downloads": -1, "filename": "draceditor-1.0.9.tar.gz", "has_sig": false, "md5_digest": "4f7f1099e277659214e644219123ff14", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 909168, "upload_time": "2017-01-02T17:20:01", "url": "https://files.pythonhosted.org/packages/25/78/4afcab417f793ebfd472154bb69f237e7c2e2fbe31b1b716e959f21f1595/draceditor-1.0.9.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "8b149db676f362cbd7a223dd6fb0624b", "sha256": "31f8b40c46cc899e94926b1a97678e509c6d94d01d08aee7192a49849c7996da" }, "downloads": -1, "filename": "draceditor-1.1.0.tar.gz", "has_sig": false, "md5_digest": "8b149db676f362cbd7a223dd6fb0624b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 909170, "upload_time": "2017-01-05T15:33:23", "url": "https://files.pythonhosted.org/packages/99/11/566e5ae611890da7de797be24d22a81fd1facad3a949ef4a7cab4166741e/draceditor-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "7ec891f478bd90156448487d0cd5658e", "sha256": "5d409f3fb80ebe6255820de339433fc1933581786ecc688ca98bbf41e24176db" }, "downloads": -1, "filename": "draceditor-1.1.1.tar.gz", "has_sig": false, "md5_digest": "7ec891f478bd90156448487d0cd5658e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 909161, "upload_time": "2017-01-05T16:40:39", "url": "https://files.pythonhosted.org/packages/9f/3d/3d133cbfe409ec2004a40c63d8f19b4c696cc22dff6028a8f85a8a494c81/draceditor-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "d7e3e7599e99f6357cbbf6e0b6a77ae7", "sha256": "a4b3bd2e7866ffc1a1014566428474adbc87f3e5d6671971e7ab28623c858886" }, "downloads": -1, "filename": "draceditor-1.1.2.tar.gz", "has_sig": false, "md5_digest": "d7e3e7599e99f6357cbbf6e0b6a77ae7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 909157, "upload_time": "2017-01-05T16:54:01", "url": "https://files.pythonhosted.org/packages/80/8e/bce8fb21dc2264f70ea8a82c3cd3c1266ba40cd4e71b6c850be1bed576e8/draceditor-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "73303d16f06b5ec6eb07e4b48062c7d2", "sha256": "ebcb392117593d16b816d3ba7d47d22bdd18b8054033d06d5fb9020346981a1a" }, "downloads": -1, "filename": "draceditor-1.1.3.tar.gz", "has_sig": false, "md5_digest": "73303d16f06b5ec6eb07e4b48062c7d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 909180, "upload_time": "2017-01-05T17:03:52", "url": "https://files.pythonhosted.org/packages/ed/2a/05ff4172dc14d181a0072b85f02ecbffc85ae6422ff9a177ace93692262b/draceditor-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "d457dcb1164a11ba3fbb4a3cf5012f87", "sha256": "bc61b9939d20d8697016412623698d2c8f261a4498e55633427b962ac6097596" }, "downloads": -1, "filename": "draceditor-1.1.4.tar.gz", "has_sig": false, "md5_digest": "d457dcb1164a11ba3fbb4a3cf5012f87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 909229, "upload_time": "2017-01-05T17:22:13", "url": "https://files.pythonhosted.org/packages/40/4b/380b26b0008c6231d99920b3cd7c664da54eab54eeac135ce3ef57901ca8/draceditor-1.1.4.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "360cb9c8ac75a5ff87ca5a58ddf8ff05", "sha256": "5e42a1e9182610e251dc1e74fc812099fa6de1c49c27d9b743d83fe6ed6564e2" }, "downloads": -1, "filename": "draceditor-1.1.5.tar.gz", "has_sig": false, "md5_digest": "360cb9c8ac75a5ff87ca5a58ddf8ff05", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 909822, "upload_time": "2017-01-13T01:14:43", "url": "https://files.pythonhosted.org/packages/30/89/734d66629987d1fcbab70a21e6dff73c9ba8ae0f37fc29e41f73ad85c016/draceditor-1.1.5.tar.gz" } ], "1.1.6": [ { "comment_text": "", "digests": { "md5": "a95705cde00dc8bc9b4d490c1e2e403a", "sha256": "5555acbb9605339dd6115fbdc896dd9222b048ee92a348139e4fb30ca99ca448" }, "downloads": -1, "filename": "draceditor-1.1.6.tar.gz", "has_sig": false, "md5_digest": "a95705cde00dc8bc9b4d490c1e2e403a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 908995, "upload_time": "2017-01-28T19:57:34", "url": "https://files.pythonhosted.org/packages/2c/a5/db719fc614f66fc6c8befd8246f0d8f101ae89db0531e3f096b11c66f5db/draceditor-1.1.6.tar.gz" } ], "1.1.7": [ { "comment_text": "", "digests": { "md5": "9a259c914eeb2ce7638d2fb74ab294a3", "sha256": "c82bc5306a63f6171feb568f49f24716f695e1d343404ceb34d6730db8f0a53a" }, "downloads": -1, "filename": "draceditor-1.1.7.tar.gz", "has_sig": false, "md5_digest": "9a259c914eeb2ce7638d2fb74ab294a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 937311, "upload_time": "2017-03-15T00:51:56", "url": "https://files.pythonhosted.org/packages/a2/f3/9ad014cf68ba9e7da63f9724a9ae743b81d73dd6fd7a1068090266dfc35d/draceditor-1.1.7.tar.gz" } ], "1.1.8": [ { "comment_text": "", "digests": { "md5": "8cf4c0f2cd659cf5f4e7a2c2d19857b3", "sha256": "6210a76061b3c99b1543bfef6add13a9bc8123c847143a5eaea40f839de0446e" }, "downloads": -1, "filename": "draceditor-1.1.8.tar.gz", "has_sig": false, "md5_digest": "8cf4c0f2cd659cf5f4e7a2c2d19857b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 949104, "upload_time": "2017-04-11T12:51:00", "url": "https://files.pythonhosted.org/packages/c0/0a/8fea5a891d1e54086720e84283eed6a3949dda8aa7e88069f3f5690cf164/draceditor-1.1.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8cf4c0f2cd659cf5f4e7a2c2d19857b3", "sha256": "6210a76061b3c99b1543bfef6add13a9bc8123c847143a5eaea40f839de0446e" }, "downloads": -1, "filename": "draceditor-1.1.8.tar.gz", "has_sig": false, "md5_digest": "8cf4c0f2cd659cf5f4e7a2c2d19857b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 949104, "upload_time": "2017-04-11T12:51:00", "url": "https://files.pythonhosted.org/packages/c0/0a/8fea5a891d1e54086720e84283eed6a3949dda8aa7e88069f3f5690cf164/draceditor-1.1.8.tar.gz" } ] }