Congratulations! You've been doing great and are a top contender. 👍
Base code is available here: https://snack.expo.dev/@linxsystems/tech-ii-songs-app.
- Your App should have 2 bottom tabs - Home and Favorites. Home tab should have multiple sections of song carousels (United States, UK, Germany). Favorites tab should show a list of items in the Favorites list, and handle empty list.
- Create a UI to show a horizontal carousel of songs. Carousel should be reusable, and have indicators for data loading and empty data. Each carousel item should have a button to add the song to the Favorites list.
- Make an API call to fetch from:
- Setup the redux logic for toggling a song into the Favorites section. A song should only appear in this section once.
Refer to the given mockup to write a clean UI with good UX. Please organize, design, test and document your code as if it were going into production. Add any required dependencies to the package.json file.
We will setup a private slack channel for you to communicate with us and ask any questions. We encourage you to explain your thought process throughout this exercise.
Item | Score | Candidate Score |
---|---|---|
Tab Navigation | 0 - 10 | |
Carousel UI | 0 - 10 | |
Home/Favorites screen UI | 0 - 10 | |
API calls | 0 - 10 | |
Redux | 0 - 10 | |
Readability | 0 - 10 |
Open the App.js
file to start writing some code. You can preview the changes directly on your phone or tablet by scanning the QR code or use the iOS or Android emulators. When you're done, click Save and share the link!
When you're ready to see everything that Expo provides (or if you want to use your own editor) you can Download your project and use it with expo-cli.
All projects created in Snack are publicly available, so you can easily share the link to this project via link, or embed it on a web page with the <>
button.
If you're having problems, you can tweet to us @expo or ask in our forums.
Snack is Open Source. You can find the code on the GitHub repo.