Your task is to write a simple Star Wars fan page.
- Use Typescript for the code structure.
- Please use simple CSS. DO NOT use any third-party library for styling.
- Project output should be a proper website with all the necessary elements i.e navbar, footer, etc.
- The recommended duration for this task is 24-36 hours.
Apis: https://swapi.dev
Click on the Documentation in the upper right corner. In the documentation, please find the panel with Resources on the left side and utilize that to create the application.
For reference, please visit https://www.starwars.com/.
Write a React app that utilizes API from the above URL
- Manage state with redux-toolkit or context API and fetch data using Axios or a similar library.
- Use the APIs to build a Home page with a minimum of three categories based on the 'Resources' panel from the website above.
- Clicking on a category takes the user to a page with a list of subitems in that category.
- When user clicks on an item from list, it should redirect user to a page with detail information regarding that item.
- Show a spinner or placeholder while waiting for the API request.
- Ensure a pleasing and responsive design, especially on mobile, and include images for each category / detailed page.
- Upload the code to a public GitHub repository and include a README.md explaining how to run the app.
Once you complete the challenge after carefully following the instructions, make sure to host your app on any free hosting i.e. Vercel, Netlify, or similar.
- Frequent and thoughtful commits.
- Dockerize the app.
- Write realistic unit/end-to-end tests.