Angular DHIS2 based RBF app
Boilerplate codes to fast track developing DHIS2 applications based on Angular framework
Prerequisites
- NodeJs (10 or higher)
- npm (6.4.0 or higher), can be installed by running
apt install npm
- git, can be installed by running
apt install git
Setup
Clone repository
git clone https://github.com/hisptz/rbf-app.git
Navigate to application root folder
cd rbf-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 RBF APP, check out any of the HISP MEMBERS.
Further more, to get more help on the Angular CLI use ng help
or go check out the Angular CLI README.