/ninja.js

Primary LanguageTypeScript

React Interview

This project contains a simple React application to display a paginated table of users which can be filtered.

The required features are working and have already been implemented, but the implementation can be improved in many different ways.

Given the existing solution, refactor and tidy the code to what you believe would be a better implementation. The goal is to end up with a more flexible solution to be able to accommodate further required features.

To get started:

  • clone
  • yarn install
  • yarn start

To run the tests:

  • yarn run test

TODO

  • Port the application to TypeScript
  • Fix tests
  • Change file naming convention
  • Use CSS modules in styles (I would enforce it but let's keep the default create-react-app configuration for now)
  • Write basic tests of the application entry point
  • Refactor App component
  • Refactor DataTable component
  • Refactor Pagination component
  • Refactor Row component
  • Refactor Page component
  • Refactor Search component
  • Use named exports within the app