Wednesday, 23 December 2009

Prototyping with HTML 5 (1)

In my last post, I wrote about the new HTML 5 features and how can these new features be a revolution in the ecosystem of current web applications. But I do not want to stop here without exploring a little bit about the possibilities of combining these new HTML 5 features with Openbravo ERP.

The plan is to start a series of posts with the objective to create a prototype of a web application for hand held devices like iPod Touch and iPhone, oriented to mobile users of Openbravo ERP.

The requisites I am imposing to myself for this prototype are the following:
  • It will be an HTML application and take advantage of HTML 5.
  • The application will run in an iPod Touch or iPhone, because these devices are broadly available, can be considered "cheap" for this task, and also because it is a device I love :-). It also will run in Firefox 3.5 for debugging purposes.
  • It will consume standard Openbravo ERP REST Web Services. Nothing else than a fresh Openbravo ERP community edition will be needed.
  • The application must be capable to work online and offline without any loss of functionality, just the need to work without the latest data available. It will be required when working offline, to cache data and to store data. And refresh the cache data and send stored data when the device is connected again.
  • The functionality developed should be "useful".
  • It should be just a prototype. Not expend too much time, handling exceptional behaviours, errors. Just make it work.
In this first development iteration I created a very simple application for sales men to allow them to have the list of products with details like the category and the unit of measure of the product (UOM). And with the ability to change there prices shown between all price lists available. It works completely offline and has the ability to refresh the data when the device is online.

I plan to publish the source code after polishing it in the Openbravo forge under the Openbravo Public License with small instructions to install it. In the mean time here you have screenshots of the application working:



In the next steps I plan to build a simple form to submit sales orders and also I would like to display charts. And if you have suggestions about how to improve this prototype I will be glad to hear them.

Disclaimer: The project I am developing here is done in the personal investigation time I have reserved during development sprints and it is not in the roadmap of Openbravo ERP and there is not commitment from Openbravo to his partners, customers or community related to the availability or support of this project.

2 comments:

Rok said...

Adrian, do you know if it will work on Android devices? Does their webkit based browser already support HTML5?

Adrián Romero said...

Hi Rok, IT DOES!!! I tested it in the Android SDK using the Android 2.0.1 API level 6 target. My only concern is that I do not know how many real devices have an Android 2.0.1 version or later.

Check the screenshot: http://img524.yfrog.com/i/androidopenbravo.png/