Other Applications

This page collects notes, algorithms, like, dislikes, etc about other Business Applications.

OpenERP / Odoo


+ Lots of plugins for extensibility
+ Instant messaging(maybe have a chatroom for logged in users)
- No framework - maintain entire stack ourselves
- Heavily lacking in tests for the amount of scope it covers



It's written in Python & is built off of a framework, but it seems like the framework only really exists for this app. Which kind of makes me worry that maintaining both would end up as our responsibility if the maintainers lose interest. But it's been in development since 2011 and is still maintained.

It seem like there's only one integration test for the whole app & some modules have unit tests, and there's a bit more for the framework. The database API tests are openERP-quality :(

It's hardcoded to mysql/mariadb.

Some cool things:

  • Assigning customers to users(actually quotes to customers). This gives me the idea of creating something like "customer interactions", where users could log an interaction(email, phone call, voicemail) with a customer and look at the log of previous interactions for context.
  • Tasks/Projects & Time Entries

Will have to spend some time looking into the frappe framework to see how it compares to Django.



Satchless is a set of abstract Python objects that implement low level store functionality. Intended as a foundation for business/store applications. Includes things like Items, Line Items, Item Variants:

Has tests.

Might be abandoned? Or maybe just finished? Last commit was June 25th 2014.


Saleor is a Django store that implements the Satchless models.

Django Oscar


This is a customizable Django E-Commerce store. We could fork this & keep the customers, orders, products while stripping out the web-store?

Or maybe just write extensions to do what we want?

Lots of good code & models to rip if we go with a Django project that's not forked from this: This might be the best solution, as it uses only Abstract models for the core applicaton, and you simply subclass them to override them:

I'm now imagining multiple extensions implementing the additional features we want, along with a single SESE project that customizes everything to SESE's specifics. Then TO can customize it for themselves as well. Maybe a "meta-package" that assembles everything and provides documentation on how to customize everything, and then an SESE fork that customizes it? Or maybe we can just customize oscar for now & eventually abstract that out?

We could also use Oscar for a new website, maybe use db replication or syncing scripts. Have the Acorn verson show /dashboard/ at / and the website one show oscars store interface.

There is a rest api extension we could (eventually?) use.