/RewardsNetworkFEChallenge

Front End Coding Challenge for Rewards Network

Primary LanguageTypeScript

Front-End Coding Challenge

Please approach this as you would a new project at work; consider the organization, design, and test coverage of your code. You should also think about aspects such as API error handling or unexpected responses.

You should not spend more than a few hours on this challenge. We are more interested in how you approach a problem than in a complete implementation.

Requirements

Prototype an interactive Movie list.

Outside of the below requirements, UX/UI is totally up to you. If you like, get creative and add additional features a user might find useful! We have also provided basic styles that could be improved, if you are feeling ambitious.

The details

Using the existing API call to Film Locations in San Francisco, create an interface that:

  • Displays the list of movies and their associated information
  • Allows the user to sort by release year either ascending or descending
  • Allows the user to search by title with partial matching

We never put a good dev down, so nothing is off-limits; just know, whatever you do, we will want you to walk us through it.

Evaluation criteria

We will be reviewing your architecture decisions, the efficiency of your algorithms / data structures, and the readability of your code.

A couple specifics we will be looking for:

  • Browser console warnings are eliminated
  • All components have sufficient unit-test coverage
  • All unit-tests pass

In regards to plugins, we tend to prefer in-house solutions because of various constraints. That said, go ahead and use whatever you like; be prepared to justify your decision.

Getting started

This project was bootstrapped with Create React App.
You need to install yarn in order to proceed.

Run the app

yarn && yarn start

This will install all the necessary packages and then start up the app.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

After you have done this the first time, you only need to run yarn start.

Test the app

yarn test

Launches the test runner in the interactive watch mode.

Documentation

Feel free to check out the React documentation and / or the TypeScript documentation.

You may also find the Create React App documentation to be useful.

Push it!

When you’re done, push the code to a repository and send us a link. We look forward to reviewing your work.