This project was developed as part of the web development course for the front-end part at Mindera MindSwap.
Live demo here.
- General Info
- Technologies Used
- Features
- Screenshots
- Setup
- Usage
- Project Status
- Room for Improvement
- Acknowledgements
- Contact
- The purpose of this project was to test the knowledge acquired in front-end classes.
- JavaScript
- Jquery - version 3.6.0.min
- Ajax
- CSS
- HTML
- BootStrap
List the ready features here:
- See information about movies
- Search some movies with filters chosen by the user
- Watch the movies trailers
- Modal with movies details
- Infinite scroll
- Responsive design
To test this project the user only needs to have access to a browser.
How to install:
- Go to Git repository - https://github.com/toaraujo/project_2_mindswap
- Download to your PC
- Open index.html with your browser
User can search by clicking genres tabs or magnifying glass to search by name or clicking filter tab for more parameterized search. User can see the movie details by clicking on the corresponding poster.
Use cases and code examples:
-
Search by name
function searchByName(input, page) { let id = document.getElementById('searchInput_movies_container'); id.innerHTML = ''; let valueInput = input; let url =
https://api.themoviedb.org/3/search/movie?${APIKey}&query=${valueInput}
; requestAPI(url, id); } -
Search with filters
function filter(page) { let id = document.getElementById('searchBtn_movies_container'); const discoverEndpoint = 'discover/movie?'; const genreEndpoint = document.getElementById('filter-nav__genre').value; const sortByEndpoint = document.getElementById('filter-nav__sort').value; const releaseDate = document.getElementById('filter-nav__movie-year').value; const releaseDateEndPoint =
&primary_release_date.gte=${releaseDate}-01-01&primary_release_date.lte=${releaseDate}-12-31
; const voteAvrEndpoint = document.getElementById('filter-nav__rating').value;if (page === 1) { movies = []; } let url = APIRequestPrefix + discoverEndpoint + APIKey + `&language=en-US${sortByEndpoint}&page='${page}` + releaseDateEndPoint + voteAvrEndpoint + genreEndpoint; requestAPI(url, id); resetFilter();
}
Project is: complete / but we can make some design improvements later.
Room for improvement:
- Some design
- Website responsiveness
- Many thanks to Mindera MindSwap teachers.
Created by:
- Diana Moura -> diana.moura@mindswap.academy)
- António Araújo -> antonio.araujo@mindswap.academy
- Jorge Pereira -> jorge.pereira@mindswap.academy