To help on deploy, I used Docker to create two containers and run both with DockerCompose on AWS EC2 instance.
In backend, I used Express framework, and in frontend I used Angular 9.
- The 'title' field was the correct movie name instead of 'original_title' field.
- The fully movies list should be displayed paginated to access all movies.
To run the project locally, you have two ways:
-
- Use Docker. So, run the command below, in the root directory, to start two containers (backend and frontend), and access the address http://localhost:80/movies
Command: docker-compose -f docker-compose.yml up -d --build
-
- Run the backend and frontend separately
- Access the 'backend/src' directory and run the following command: node app.js
- Access the 'frontend' directory and run the following command: ng serve
-
- Backend
- Axios: make http request to the TMDB API
- Chai/Mocha/Should/Request: make tests
- BodyParser: format body message in requests
- Frontend
- NgBootstrap: paginator component
- Rxjs: work with observables and async methods
- Angular Libs: default components and services from Angular