GoConqr has a new look! Let us know what you think.

Mind map

almwplus

ray C almwplus English

Map content

almwplus

  1. 1.Overview and background

    • 1.1 A web app, divided into client and server
      • 1. the server reuses WP server, exposes RESTful API to the client; 2. the client build on AngularJS with Node.js ecosystem.
    • 1.2 the client is a SPA on AngularJS
      • SPA: Single Page Application
      • why SPA?
        • deployable on various devices
          • 1. support various browsers on PC or Mobile.chrome, firefox, safari, IE9+ 2. it is very likely ported to native app  with help of ionic or cordova. 
        • independent to the server as far as possible
          • 1. only use Restful api to access the server; 2. developing independent.
        • AngularJS generic support SPA
          • AngularJS was designed to support SPA.
        • uses old WP server
          • it is not quite fit to use php server with angularJS technically. And we will use nodejs to re-implement the server.
      • why AngularJS?
        • good ecosystem
          • 1. adapt with nodejs app and tools 2. adapt with other javascript frameworks (bootstrap, jquery) 3. rich maintenance tool chain, yeoman, gulp, bower, generator-ng-poly
        • good official support
          • thousands of generic widget ready to be used.
        • future trends
          • 1. dominant browsers support ,  more important generic support with next generation browser of Microsoft; 2. ecosystem is growing;
        • engineering features
          • 1. hind low level DOM manipulation, make development quick and hide details; 2. modularization makes project extensible.
        • testable
          • angularJS big feature, everything could be tested. 
  2. 2. system architecture

    • 2.1 project management
      • project managed by ng-poly, it is a nodejs tools powered by gulp.js. project management have following features.
      • automatic building
        • no makefile, no ant.  add source code and build with it. that all no additional makefile and we got runnable package.
      • configurable by javascript
        • Based on generator ng-poly and gulp. programmer could add extra code to load correct module, start processes. Use javascript(nodejs) to manage all you need.
      • production capacity and development mode
        • 1 .enable to minify and uglify source code, css. we can build for production. 2. we also configure to connect to different server at developping stage. 
      • Test module
        • we have unit test and e2e test.
      • independent developping
        • Thanks to ng-poly, we setup a local rest emulator. it emulator the server restful APIs and programmable. we could develop the client without the server support. in the future if use nodejs as the server, it can be ported into it.
    • 2.2 module categories
      • we treat all things as module. AngularJS provides this feature. module help us separate complicated things into simple pieces. there are two kinds of modules: UI modules and support modules; UI modules represent the WP business representation, they are application explorer, tasks etc.support modules acts supporting functionalities, like communication, error handler, widgets, common services etc.
      • LMe and LMi web business prepresentation(UI modules)
        • UI modules are business presentation layer, it includes app explorer(lme, lmi), tasks(lme, lmi), lme import packages, deployment(lme, lmi) , dashboard(profiles and computer deployment statistic in donut chart and bar chart)
      • support modules
        • communication
          • communication between the client and server is complicated. we need divided its requirement into different layers.  1. DataResource layer, handles http issue; 2. business layer, handles response data and resolves business logic errors;
        • error handler
          • we need a unified error handler I for exception issue. Error divided into four levels: fatal, error, warning, info. fatal error is unrecoverable exception, it should block user operation by modal dialog. others will not interrupt user operation in toast form, they could be ignored.
        • components and widgets
          •  widgets is a little encapsulated module which could be reused. we have implemented some widgets by ourselves, such as navbar,  breadcrumb, bar and donut chart. for some common use widget we are using third party ones from angular official site.
        • other miscs
          • some common usage utilities. services and directives
    • 2.3 UI design
  3. 3.Status and future plan

    • Done pages
      • please show the work flow at the time.
    • what would be like in the future
      • 1.show some static pictures. 2. we would add some features: add GAR favorite; information of Deployment set status changing;

Information

Description
testing
Created by
ray C
Views
62
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?