Simplest way to run the application is by using Docker. Docker must be installed, launched and terminal must have privileges to run docker commands.
in teminal, run commands:
docker pull user0856/citylist-frontend-container
docker run -p 80:80 user0856/citylist-frontend-container
in new terminal tab/window, run commands:
docker pull user0856/citylist-backend-container
docker run -p 8080:8080 user0856/citylist-backend-container
In browser, go to localhost:80
Credentials:
login: user
, password: user
(can view and search)
login: admin
, password: admin
(can view, search and edit cities)
Search bar is at the bottom of the page
Use pagination buttons to return home after search
(Home button to be added)
Edit info
Modal dialog to be replaced with a separate form with separate inputs
For now you are offered an input field filled with current data so it can easily be edited
Further improvments might include:
- api versioning
- add backend data validation as per business logic
- move @CrossOrigin to Profile configurations to run only on dev env
- additional model data layer between service and repository layers
- jwt tokens or side auth services implementation
- end-to-end tests
Backend:
- Spring Boot
- Spring Web
- Spring Data JPA
- Spting Security
- H2 Database
- Gradle
- Junit 5 / Mockito
Frontend:
- Angular
- Bootstrap