Project includes 3 modules
- etl - ETL (emit transform load) utility to convert TSV based files into MySQL tables and data for Back Office
- back office api - API backend for Back Office (Spring Boot, MySQL)
- back office ui - Angular based UI for Back Office
- Please, make sure
JDK 8
is installed on your machine (runjavac -version
to verify version installed). - Use
docker compose up db
to runMySQL
server (docker-compose.yml
file is located in a project root)
- Navigate to
etl
directory - Run
./mvnw clean install
(for Linux, MacOS) ormvnw.cmd clean install
(for Windows) - Run
java -jar /absolute-path-to-etl-1.0-SNAPSHOT.jar etl -b /absolute-path-to-brands.tsv -q /absolute-path-to-quantity.tsv -u user -p secret --url jdbc:mysql://localhost:3306/brands_db?useSSL=false
- Run
java -jar /absolute-path-to-etl-1.0-SNAPSHOT.jar etl -h
to get help
- Please, make sure
JDK 8
is installed on your machine (runjavac -version
to verify version installed). - Use
docker compose up db
to runMySQL
server (docker-compose.yml
file is located in a project root)
- Navigate to
backup-office-api
directory - Run
./mvnw spring-boot:run
(for Linux, MacOS) ormvnw.cmd spring-boot:run
(for Windows) - Open http://localhost:8080/back-office/actuator/health in your browser. App started successfully if you see
{"status":"UP"}
in a browser console.
API documentation (powered by Swagger) is avaliable by the folowing link.
- go to
back-office-ui
folder - run
npm install
to install all the required dependencies and packages - run
npm run ng serve
which will start an app server running on http://localhost:4200. Follow http://localhost:4200/back-office/ to open UI app in a browser.