Django Oscar E-Commerce Framework
High level review of the framework and deep-dive into some of it's interesting features
By Ori Hoch
My Django-Oscar experience
ahavnoo.com - Multi-vendor shop where a percentage of each sale is donated to a do-good project.
Developed by LoopIndex
Oscar benefits for Ahavnoo
-
Multi-vendor
although not officially supported, very easy to implement using the fullfilment partners feature
-
Management of donation projects
It's very easy to customize the dashbaord
-
Customized checkout process
added support for donation and project selection during the checkout process
-
Custom payment using Tranzilla
There is no Tranzilla payment plugin
What is Django-Oscar?
- Django E-Commerce framework
- Open Source, active, commercial support and endorsment
- Django 1.8, Python 2 and 3 supported
- Frontend (optional): Bootstrap 3, Less, Jquery
- Extremely customizable
Partial list of features
-
Product Catalogue
including: variants, categories, product attributes, product types, recommendations, reviews
-
Customer Management
including: customer address and order management, communication events, email templates
-
Dashboard
Easy to use and customize, including support for custom permissions
-
Offers, discounts, vouchers
Managed via dashboard - can specify offer availability, conditions and benefits
-
Order Management
Support for complicated workflows, including per-line statuses and events
- Fulfilment Partners / Suppliers
- Payment plugins
- Promotions
managed via dashboard - can edit content-blocks per page
- Search Simple or with Solr
Useful features for non e-commerce projects
-
Dashboard
Easy to extend and modify
-
CMS features
Edit pages and add content-blocks from the dashboard
-
User customizable email templates
Define email templates and edit them from the dashboard
-
Reviews and rating (could be used for comments)
Reject / Approve from the dsahboard
-
Reporting
User can generate custom reports for a given time-range
-
Category tree
Editable from the dashboard
What it's not
-
Out of the box shop solution
Every installation will require some Django coding
-
Dashboard could be hard to use for some actions
UX could be improved, but it's easy to learn or customize
-
No catalogue bulk create/update
There is some preliminary support from command line
-
There aren't a lot of plugins
Integration with 3rd party services will probably require some coding
Deep-Dive
https://github.com/OriHoch/Django-Oscar-Demo
A Repository containing several progressive enhancements demonstrating Oscar usage and capabilities - highlighting the oscar code structure and development methodologies.
- Initial Setup
- Paypal express checkout integration
- Variants, attributes, frontend customization
- Custom pricing strategy