The task entails querying a live API of your choice.
You are required to enhance the project skeleton by querying the API based on user input, display a list of results so that the user can select one. The selection should trigger additional call(s) to display further information.
Notes:
- Results should be displayed in a manner that is presentable and professional.
- Below is a list of APIs available for user-consumption that are easily available for consumption.
- Alongside implementing the requirements above, the finished project should be production-ready. This requires effective unit-tests to be written for the functionality you have implemented.
The project is written in Angular 9, with Angular Material installed. Feel free to add any necessary npm packages you feel necessary to complete the task.
- Run
npm i
(and await the packages to install) - Run
ng serve -o
- Observe the project starting in a browser.
- Download the queried data from an API of your choice.
- Present the data to the user.
- Style the layout of the data.
- Test any relevant components/services/pipes you implement.
API | Description |
---|---|
iTunes Search | Search for content within the iTunes Store and Apple Books Store |
Oxford Dictionary | Enhance your app with our world-renowned dictionary data |
Words API | An API for the English Language. |
Open Library | Access to open-library data |
Meta Weather | An API to query weather data |
Pokemon API | All the Pokémon data you'll ever need in one place, easily accessible through a modern RESTful API |
Yahoo Weather | Yahoo's API to query their weather data |
Nasa | NASA data, including imagery, eminently accessible to application developers |
Spotify | The Spotify Web API endpoints return JSON metadata about music artists, albums, and tracks |
- Implement an auto-complete feature (see Material AutoComplete) which makes suitable suggestions from your API of choice.
- Make the website mobile-responsive so it looks good on mobile.