The purpose of this assessment is to demonstrate:
- An understanding of React syntax
- Working with an API
- Storing and manipulating React state
- Structuring an application with multiple components
- HTML and CSS ability
- Responsive web development ability
- Material UI
Completed minimum requirements:
- Retrieved the data from the mock API.
- Displayed the data in a list, including properties from the data that are appropriate for a list view.
- Implemented a multi-select category filter - I made the assumption that filtering by multiple categories should display posts with one or more of those categories.
- Implemented pagination as a "load more" feature.
- Used semantic markup where possible.
- Created a responsive layout with HTML and CSS.
Completed bonus requirements:
- Added animated transitions when more posts are loaded, or when the posts initially load.
- Converted the application to use TypeScript instead of JavaScript.