Widgy widgy widgy
Widgy: Tree Editor for Django
Widgy is a content editor somewhat in the line of CKEditor. It is not a WYSIWYG editor though. Widgy is more suited than CKEditor for editing pages, as in a CMS because it allows you to edit specific parts of the page and those parts know how to render themselves. Whereas a WYSIWYG stores its data in HTML, Widgy stores it in a Tree where each node can render itself.
Widgy is available under the Apache Version 2.0 license. Contribute on github.
Read Widgy’s documentation at http://docs.wid.gy.
Install with pip.
pip install django-widgy
When developing Widgy, it might be handy to clone the repository then install it.
git clone git://github.com/fusionbox/django-widgy cd django-widgy pip install -e .
Read about Widgy’s data model at http://docs.wid.gy/en/latest/design/data-model.html.
There is a developers mailing list available at firstname.lastname@example.org
Running the Tests
Once coverage is installed (pip install coverage), the Makefile has two commands to help report on code coverage.
will run the tests with coverage enabled and generate HTML coverage files.
will run the tests and open the coverage report in your web browser.
Widgy is now Apache Licensed
Breaking Change Use django-pyscss for SCSS compilation. [Rocky Meza, #175]
Requires an update to the COMPRESS_PRECOMPILERS setting:
COMPRESS_PRECOMPILERS = ( ('text/x-scss', 'django_pyscss.compressor.DjangoScssFilter'), )
You may also have to update @import statements in your SCSS, because django-pyscss uses a different (more consistent) rule for path resolution. For example, @import 'widgy_common' should be changed to @import '/widgy/css/widgy_common'
Added help_text to Section to help user avoid bug [Zach Metcalf, #135]
Allow UI to updated based on new data after reposition [Gavin Wahl, #199]
Changed Button’s css_classes in shelf [Rocky Meza, #203]
Added loading cursor while ajax is in flight [Gavin Wahl, #215, #208]
Get rid of “no content” [Gavin Wahl, #206]
Use sprites for the widget icons [Gavin Wahl and Rocky Meza, #89, #227]
Only show approve/unapprove buttons for interesting commits [Gavin Wahl, #228]
Updated demo app to have new design and new widgets [Justin Stollsteimer, Gavin Wahl, Antoine Catton and Rocky Meza, #129, #176]
Added cloning for WidgyPages [Gavin Wahl, #235]
Use a more realistic context to render pages for search [Gavin Wahl, #166]
Add default children to Accordion and Tabs [Rocky Meza, #238]
- Fix cursors related to dragging [Gavin Wahl, #155]
- Update safe urls [Gavin Wahl, #212]
- Fix widgy_mezzanine preview for Mezzanine==3.1.2 [Rocky Meza, #201]
- Allow RichTextPage in the admin [Zach Metcalf, #197]
- Don’t assume the response has a content-type header [Gavin Wahl, #216]
- Fix bug with FileUpload having empty values [Rocky Meza, #217]
- Fix urlconf_include login_required handling [Gavin Wahl, #200]
- Patch fancybox to work with jQuery 1.9 [Gavin Wahl, #222]
- Fix some import errors in SCSS [Rocky Meza, #230]
- Fix restore page in newer versions of Mezzanine [Gavin Wahl, #232]
- Use unicode format strings in review queue [Gavin Wahl, #236]
- Updated quickstart to cover south migrations with easy_thumbnails [Zach Metcalf, #202]
- Added Proxy Widgy Model Tutorial [Zach Metcalf, #210]
- Fix migrations containing unsupported KeywordsField from mezzanine [Scott Clark]
- Rename package to django-widgy
- Fix Widgy migrations without Mezzanine [Gavin Wahl]
- Drop target collision detection [Gavin Wahl]
- Fix Figure and StrDisplayNameMixin [Gavin Wahl]
- Avoid loading review_queue when it’s not installed [Scott Clark]
- Fix multi-table inheritance with LinkFields [Gavin Wahl]
- Add StrDisplayNameMixin
- Fix image widget validation with the S3 storage backend
- Fix Widgy admin for static files hosted on a different domain
- Adjust MANIFEST.in to fix PyPi install.
- Fix layout having a unicode verbose_name
- Heterogeneous tree editor (widgy)
- CMS (widgy.contrib.widgy_mezzanine)
- CMS Plugins (widgy.contrib.urlconf_include)
- Widgets (widgy.contrib.page_builder)
- Form builder (widgy.contrib.form_builder)
- Multilingual pages (widgy.contrib.widgy_i18n)
- Review queue (widgy.contrib.review_queue)