Welcome! This repository will serve as a technical screening ahead of your interviews for Appirio Digital Studios. Please follow the instructions below. This exercise should take 45-60 minutes to complete.
Please complete the backend screening before starting this. We will tie both together in this particular exercise.
- Fork this repo
- In your newly forked repo, initialize a new React project using create-react-app
- Create a SPA with the specifications below using the routing library of your choice
- Create a Pull Request back to this repo with a summary of your solution. Highlight libraries chosen, techniques used, and future considerations.
- This screen should feature a form with two inputs: Email and Password
- This screen will have a button labelled "Login"
- Upon pressing Login:
- Call to the
/api/auth/login
route from the backend exercise to retrieve a JSON Web Token - Redirect the user to
/dashboard
- Call to the
- This should be a publicly accessible route
- This screen should simply have "Dashboard" centered
- This screen will have a "Logout" button on the upper right hand corner
- If a user is logged in, refreshing the page or navigating to it directly will allow a user to land on the page
- Upon pressing Logout
- Redirect the user back to
/login
- Redirect the user back to
- If a user is logged out, refreshing the page or navigating to it directly from another tab will redirect back to
/login
- This should be a protected route
- Unit Tests and a test runner of your choice included
- Application deployed to Heroku
- Use of Redux for state management
- Use of CSS preprocessors (PostCSS or SASS) or CSS in JS