A simple publishing app for Django that is easy to integrate when you need some editable pages for your Django-driven site. It features a custom editor that makes it easy to focus on the content when writing.
Let's say you have a nice website built with Django. But then you realize you want some static pages to complement your main application, say a blog, maybe a nice start page, an about page and perhaps some help pages. Just add django-simple-publishing, set up some templates and start writing!
The goal for django-simple-publishing is to be easy to integrate into other projects, to be simple to use and to play nicely with your other apps.
- Custom editor for writing your content based on Ember.js featuring
- Markdown for formatting content
- Real-time preview of the generated content
- Easy creation of multiple levels of pages, eg. /help/, /help/topic/, /help/topic/answer/
- Uses Django templates to render your pages
- Different types of pages that can use different templates (can be defined in your settings)
- Can be used for the root of your site or only a part, eg. /blog/
Here's some stuff that's planned, but not done yet:
- Uploading images and adding them to your pages.
- Optional offline generation (like Jekyll) that pre-generates the whole site and saves it in eg. Redis or the database.
- Tagging support
Installation and usage
pip can install directly from Github:
pip install -e git+git://github.com/olofsj/django-simple-publishing.git#egg=django-simple-publishing
installed_apps = [ ... 'publishing', ]
If you want to use it to serve your site root add the following to your url config in
urlpatterns = patterns('', ... # Simple publishing (should be last) url(r'^', include('publishing.urls')), )
If you only want to use it to only serve eg. /blog/ add the following to your url config in
urlpatterns = patterns('', ... # Simple publishing url(r'^blog/', include('publishing.urls')), )
python manage.py migrate and you should be done!
You can now access the editor at /publishing/, or /blog/publishing/ if you used the second alternative.
- Ember Data
- Showdown for Markdown preview
- Twitter Bootstrap