Mifos X Web App is the revamped version of the Mifos X Community App, an effective financial inclusion solution and the default web application built on top of the Mifos X platform for the Mifos User Community.
It is a Single-Page App (SPA) written in standard web technologies HTML5, SCSS and TypeScript. It leverages the popular Angular framework and Angular Material for material design components.
The latest code is continuously deployed at https://openmf.github.io/web-app/ whenever a PR is merged into the master branch.
-
Ensure you have the following installed in your system:
-
Install angular-cli globally.
npm install -g @angular/[email protected]
- Clone the project locally into your system.
git clone https://github.com/openMF/web-app.git
-
cd
into project root directory and make sure you are on the master branch. -
Install the dependencies.
npm install
- To preview the app, run the following command and navigate to
https://localhost:4200/
. 1.ng serve
2. Run the application with local configurations in environments/environment.local.ts fileng serve -c local
3. Run the application with QA configurations in environments/environment.qa.ts fileng serve -c qa
Run Megalinter locally before committing your changes with the following command
docker run -v "${PWD}/:/tmp/lint" -e VALIDATE_ALL_CODEBASE=false oxsecurity/megalinter-cupcake:v7
The application is using the development server with basic authentication by default. The credentials for the same are:
Username - mifos
Password - password
Important Note: Please do not make any alterations to these credentials.
Run ng serve
for a dev server. Navigate to https://localhost:4200/
. The app will automatically reload if you change any of the source files.
Run ng generate component component-name
to generate a new component. You can also use
ng generate directive|pipe|service|class|guard|interface|enum|module
.
Run ng build
to build the project. The build artifacts will be stored in the dist/
directory. Use the --prod
flag for a production build.
Run npm run build:prod
to build a production artifacts Instead.
To get more help on the Angular CLI use ng help
or go check out the
Angular-CLI README.
Follow the given instructions for your operating system to setup a local server for the Mifos X platform.
For connecting to server running elsewhere update the base API URL and/or tenant identifier property in the environments/environment.ts
file and environments/environment.prod.ts
file for development and production use respectively.
By default OAuth2 is disabled. To enable it, change the value of oauth.enabled property to true in the environments/environment.ts
file and environments/environment.prod.ts
file for development and production use respectively.
To locally build this Docker image from source (after git clone
this repo), run:
docker build -t openmf/web-app:latest .
You can then run a Docker Container from the image above like this:
docker run -d -p 4200:80 openmf/web-app:latest
Access the webapp on https://localhost:4200 in your browser.
It is possible to do a 'one-touch' installation of Mifos X Web App using containers (AKA "Docker"). Fineract now packs the mifos community-app web UI in it's docker deploy.
As Prerequisites, you must have docker
and docker-compose
installed on your machine; see
Docker Install and
Docker Compose Install.
Now to run a new MifosX Web App instance you can simply:
git clone https://github.com/openMF/web-app.git ; cd web-app
- for windows, use
git clone https://github.com/openMF/web-app.git --config core.autocrlf=input ; cd web-app
docker-compose up -d
- Access the webapp on https://localhost:4200 in your browser.
You can also setup different confiurations for the MifosX Web App using environment variables:
- Use environment variables (best choice if you run with Docker Compose):
Fineract backend settings
FINERACT_API_URLS
Value to set a Fineract server list (environments) to be used, Default value:
https://dev.mifos.io,https://demo.mifos.io,https://qa.mifos.io,https://staging.mifos.io,https://mobile.mifos.io,https://demo.fineract.dev,https://localhost:8443
FINERACT_API_URL
Default value used from the Fineract server list. Default value:
https://localhost:8443
FINERACT_PLATFORM_TENANT_IDENTIFIER
Fineract Tenant identifier to be used, It must be aligned with the Fineract tenants
table. Default value:
default
Setting for Languages (i18n) still under development
MIFOS_DEFAULT_LANGUAGE=en-US
MIFOS_SUPPORTED_LANGUAGES=en-US,fr-FR
For more information look the env.sample file in the root directory of the project
Want to file a bug, request a feature, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues. Make sure you follow the guidelines before sending a contribution!