Create a React application using this ITunes Search API
Note: The API won’t work with CORS enabled, it is suggested to run the app with Chrome in web-security-OFF mode (linked here) or proxy calls through NodeJs/Express.
As a user
I want to be able perform a search query about an artist, album or song
So that I can see a list of artists, albums and/or songs related to my query
Given I am using the search form
When I conduct a search
Then I should be able to see the results returning matching Artists, Albums, and/or Songs
And it should limit to 10 items at a time
And when I scroll down, another 10 items should be revealed.
Given I am using the search form
When I conduct a search
And there are no results
Then I should be notified that there are no results
Presentation is secondary to the above so use of a CSS framework is permitted (and encouraged), but we are interested to see how your markup is structured. Testing is essential though, we would like to see, at least, unit testing approach.
Essential tech-stack:
- React
- Typescript
- Redux
- Redux Thunk
- NodeJS + Express static serving of pages
Optional (not mandatory but encouraged):
- Styled Components
- Functional programming/Hooks encouraged over Classes
- Jest + @testing-library/react
- MaterialU
- Used Typescript, React, Redux Toolkit etc.
- Used React Infinite Scroll package for lazy loading.
- For UI used MaterialUI.
- Used funcitonal programming with hooks.
- For testing used react testing library ,added tests for search components.
- Used Styled components and Material sx for styling
- Used express js to serve the buid pages.
View application in GitHub Pages
View application in CodeSandBox.