Skip to content
rockycubi edited this page Jun 18, 2014 · 2 revisions

Cubi-Ng Overview

Cubi-NG combines the power of both Cubi and Angularjs. Here we give application developers deeper and wider view of how Cubi-NG works.

Overview Archtecture

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 tech stacks

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

How Cubi works with Angularjs

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.

Cubi and Angulajs

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.

Cubi-NG Sequence Flow

Cubi-NG Code Structure

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: