Skip to content

iliedorobat/QoLI-Framework

Repository files navigation

eLIF: European Life Index Framework

Requirements

  • JDK 11 or OpenJDK 11.

Setup

  1. Download and install JDK 11 or OpenJDK 11 (or newer versions)

  2. Download and install Maven 3.x

  3. Clone the repository:

git clone https://github.com/iliedorobat/QoLI-Framework.git
  1. Update environment variables and app constants:
  • AUTH_USER and AUTH_PASSWORD: credentials used for updating the datasets (calling /api/v2/stats/collect API)
  • HOST_ADDRESS: the IP address of the host
  • IS_PRODUCTION: true if the app is deployed on the production server
  • IS_TESTING: true for downloading sample data instead of the full set
  • KEY_STORE_FILE: path to the keystore.p12 file
  • KEY_STORE_PASS: password for the keystore.p12 file
  • USE_TOMCAT_SERVER: true if the app is deployed on Apache Tomcat
  • Constants.BASE_PATH contains the main path to the project. This path should be updated if the app is deployed on the production server.
  1. [OPTIONAL] Run the following scripts on the production environment:

    1. Create JKS certificate:
    src/main/bash/certbot_post_renewal_hook.sh
    1. Enroll renewal hook to certbot:
    src/main/bash/certbot_enroll_renewal_hook.sh
    1. Copy the startup script:
    src/main/bash/elife_enroll_startup.sh
  2. [OPTIONAL] Install deps & compile the project (this step is already done in the next step):

  • Production build:
    ./gradlew clean build && ./gradlew copyProd
  • Dev build:
    ./gradlew clean build
  1. Create the server daemon:

    1. [OPTIONAL] Remove the server daemon:
    pm2 flush elife && pm2 delete elife
    1. Create and start a background process:
    pm2 start ~/workplace/automation/elife_startup.sh --name=elife
    1. Check if the server is up and running:
    curl -i -X GET "https://webdata.ro:8443"
    curl -i -X GET "https://webdata.ro:8443/qoli/api/v2/stats/config?analysisType=aggregate"
    curl -i -X GET "https://webdata.ro:8443/qoli/api/v2/stats?analysisType=individually&aggr=education:dropoutRatio&startYear=2020&endYear=2022"
    curl -i -X GET "https://webdata.ro:8443/qoli/api/v2/stats?analysisType=aggregate&aggr=education:dropoutRatio&aggr=health:health:bodyMassIndex&startYear=2020&endYear=2022"
    curl -i -X GET "https://webdata.ro:8443/qoli/api/v2/stats/collect?username=admin&password=admin1234"
  2. Collect the datasets:

java -jar elife.jar --collect
  1. Aggregate the datasets:
    1. Calculate QoLI dimensions:
    java -jar elife.jar --calculate --calculateIndicators --direction=COLUMN
    1. Calculate QoLI based on a specific set of indicators:
    java -jar elife.jar --calculate --aggr=["discussionRatio","gettingTogetherFrdRatio"]

Print Data

  1. Print QoLI and QoLI dimensions:
    java -jar elife.jar --print --direction=COLUMN --seriesType=COUNTRY --dimension=QOLI
    java -jar elife.jar --print --direction=COLUMN --seriesType=REGION --dimension=QOLI
  2. Print specific indicators:
    java -jar elife.jar --print --direction=COLUMN --seriesType=COUNTRY --dimension=EDUCATION --indicator=DIGITAL_SKILLS_RATIO
    java -jar elife.jar --print --direction=COLUMN --seriesType=REGION --dimension=EDUCATION --indicator=DIGITAL_SKILLS_RATIO

Framework Info

Data Source

Main Database

https://ec.europa.eu/eurostat/data/database

API Server

https://ec.europa.eu/eurostat/api/dissemination/statistics/1.0/data/ dataset_name?query_params

GUI

https://ec.europa.eu/eurostat/databrowser/view/ dataset_name /default/table?lang=en

Publications:

SYSMEA 2019: eLIF: European Life Index Framework - An Analysis for the Case of European Union Countries

@InProceedings{sysmea_v12_n34_2019_5,
    author="Dorobat, Ilie Cristian and Posea, Vlad",
    title="eLIF: European Life Index Framework - An Analysis for the Case of European Union Countries",
    booktitle="2019 International Journal On Advances in Systems and Measurements (SYSMEA)",
    volume="12"
    number="3-4"
    year="2019",
    publisher="IARIA",
    pages="198-214",
    issn="1942-261x"
}

ICDS 2019: Quality of Life Index Analysis for the Case of Romanian Regions

@InProceedings{icds_2019_2_30_10030,
    author="Dorobat, Ilie Cristian, Rinciog, Octavian, Muraru, George Cristian and Posea, Vlad",
    title="Quality of Life Index Analysis for the Case of Romanian Regions",
    booktitle="2019 The Thirteenth International Conference on Digital Society and eGovernments (ICDS)",
    year="2019",
    publisher="IARIA",
    pages="37-44",
    isbn="978-1-61208-685-9"
    issn="2308-3956"
}

About

eLIF: European Life Index Framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published