Skip to content

Latest commit

 

History

History
43 lines (42 loc) · 2.6 KB

REQUIREMENTS.md

File metadata and controls

43 lines (42 loc) · 2.6 KB

A&S FE developer test

Setup

  1. Create a new Next.js app in Typescript or Javascript using npm and node@18
  2. Add Tailwind and Radix UI as the styling UI strategy
  3. Add @axe-core/react for accessibility

Expectations

  • If there's areas of uncertainty or question please use your own knowledge and experiences to fill in the gaps
    • The task should be completed in it's entirety
    • Please return the test with a production URL and a link to the git repo
    • Tests are a nice to have but are not a requirement
  • API Querying & pagination

    1. Retrieve a list of 100 popular movies from The Movie DB using their API
    1. The list of popular movies should be batched in groups of 20
    1. On page load return the first 20 results as a 5 column grid (2 columns on mobile) that includes the movie cover art, title, release date and rating
    1. Add a load more button that onClick returns the next 20 results until the list is exhausted. The button should be hidden when the end of the list has been reached
  • Popular-Movies-—-The-Movie-Database-TMDB-
  • Managing state

    1. Clicking a movie item should open a Radix UI Dialog that includes more information from the api about the movie
  • Screen Shot 2023-02-02 at 11 12 48 am
    1. The layout and content can include anything you want
    1. Make the list sortable using a Radix UI component E.g.
  • Screen Shot 2023-02-02 at 10 53 03 am
    1. Make the title of the movie items searchable
  • Infrastructure

    1. Deploy your app to any service you deem appropriate E.g. AWS
  • Notes

    • Use conventional commits
    • You must be able to explain why you chose your deployment service
    • The site should be accessible E.g. Lighthouse testing
    • API error handling should be appropriate
    • The readme should be updated to include any important information for setup and configuration
    • The app should have no console errors in production and development
    • Try to avoid adding third party tooling or libraries unless you can justify their usage