CubiNG Overview
rockycubi edited this page Jun 18, 2014
·
2 revisions
Cubi-NG combines the power of both Cubi and Angularjs. Here we give application developers deeper and wider view of how Cubi-NG works.
Cubi is built on top of popular frameworks:
- Openbiz provides metadata framework, also the base classes for ORM (object relational mapping), UI view, UI form and element.
- Slim provides routing framework.
- Smarty provides template support.
- Zend provides utility functions for data access, i18N, caching, and etc.
Cubi itself provides a platform with
- module structure
- theme support
- web service including Restful service and custom service
- access control (role-based or group-based)
It also comes with comment modules including
- user module
- role module
- my account module
- menu module
On top of Cubi, developers can easily create custom modules and plugin to the platform easily
Cubi leverages Angularjs as its browser side framework. Cubi and Angularjs plays different roles in a web application.
- Cubi provides HTML Service
- Cubi provides Web Service. Developer may implement web service differently
- Angtularjs binds json data, served from Web Service, to HTML content served from HTML Service.
Sequence diagram (render a data list) below demonstrates interaction between browser and server.
- First, browser sends an url request to HTML Service (blue columns)
- Then after browser receives HTML from server, it creates Angular App and Controllers.
- Then Angular controller send GET request to Rest Service (yellow columns)
- Finally Angular controller receives JSON from server and bind/display the data to HTML.
Source code folder explanation here.
Now that we have discussed the overview Cubi-NG architecture in above paragraphs, next we will introduce the most critical parts: