Skip to content

Latest commit

 

History

History
112 lines (80 loc) · 3.29 KB

README.md

File metadata and controls

112 lines (80 loc) · 3.29 KB

Build Status dependencies Status devDependencies Status Maintainability Test Coverage Commitizen friendly Greenkeeper badge

Angular DHIS2 based seed app

Boilerplate codes to fast track developing DHIS2 applications based on Angular framework

Prerequisites

  1. NodeJs (10 or higher)
  2. npm (6.4.0 or higher), can be installed by running apt install npm
  3. git, can be installed by running apt install git

Setup

Clone repository

 git clone https://github.com/hisptz/ngx-seed-app.git

Navigate to application root folder

cd ngx-seed-app

Install all required dependencies for the app

npm install

Development server

To start development server

npm start

Navigate to http://localhost:4200.

This command will require proxy-config.json file available in the root of your source code, usually this file has this format

{
  "/api": {
    "target": "https://play.dhis2.org/2.29/",
    "secure": "false",
    "auth": "admin:district",
    "changeOrigin": "true"
  },
  "/": {
    "target": "https://play.dhis2.org/2.29/",
    "secure": "false",
    "auth": "admin:district",
    "changeOrigin": "true"
  }
}

We have provided proxy-config.example.json file as an example, make a copy and rename to proxy-config.json

Index DB Setup

This app support index DB as based on dexie library. In order to initiatiate index db then you have to passed index db configuration in forRoot of core module, so in app.module.ts

........
@NgModule({
  declarations: [AppComponent, ...fromPages.pages],
  imports: [
   ..........
    CoreModule.forRoot({
      namespace: 'iapps',
      version: 1,
      models: {
        users: 'id',
        dataElement: 'id',
        .......
      }
    })
    .......
    ]
    ......
    })

where in the models, for example user will be a table "user" and 'id' will be a keyIndex for the table

Build

To build the project run

npm run build

The build artifacts will be stored in the dist/, this will include a zip file ready for deploying to any DHIS2 instance.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.