Magento is a great E-commerce PHP suit. It offers great functionality and is very well designed. However most of it's themes are fully synchronous. Magento is also heavy on server resources.
This project aims at moving whole presentation layer of the e-commerce system to client (browser).By
... [More]
doing so, it can respond much quicker to user input and requests. It also can take away portion of the load from the server, as it will no longer need to create whole UI on every request.
Here are the goals:move presentation layer (including UI logic) to client keep the UI fast as possibly light keep the server stateless make as few HTTP requests as possible keep the theme highly customizable by css manipulation How the goals can be achieved:utilizing GWT and PureMVC4GWT as a base framework to transform logic and presentation widgets into Javascript code that can be run directly within browser by using deferred binding many of the tasks can be done as user progress through application, thus it can shorten startup time each request should contain authentication data, server should perform authentication and check on every request, thus it will no longer require to keep state. It should enable easy scalability. There are security concerns that should be taken care of. using image bundles for UI and up to 5 modules for main application should keep the wire "cold". Actual data transfer should be done with JSON. using HTMLPanel and proper HTML (tableless design) to keep css manipulation power, this will force to abandon some some of the GWT native widgets and layouts, but it should pay off using ExtGwt widget library (open source edition) should speed up widget development process. It doesn't use tables and offers lots of functionality. Dual licensing model might be a problem though. ---
Since Magento will need to respond in different manner then it usually does, quite some work will involve creation new Controllers to transmit and receive data. [Less]