Exercise
You have been provided with a sample data file - data.json (the data is generated, these are not real people). We'd like you to assemble a very simple web application (HTML, CSS, JS) using whichever frameworks, libraries, build tools, dependency trackers etc. you are most confident in using. Please complete as many of the following tasks as you can in the time available, then zip up your solution and email it back to us.
What we're looking for
- we want to see a small sample of your best work - we'd much prefer to see you using tools you are comfortable with, please don't try to learn a new framework for the exercise because it's unlikely to demonstrate your abilities properly
- although the example is simple, we'd like to see how you structure a project so that it's easy to extend in the future
- your work should be clear and easy to understand - imagine you have to give it to another developer to keep working on it
- the solution needs to work - it's important that you include instructions for how to build it from source and execute it
- you should pay attention to usability and aesthetics
- if you are able to provide brief notes explaining some of the decisions you made, that may help us to assess your work
Tasks
- display a list of people from the data file showing first name, last name, email, gender
- add a link to a detail page showing the person's info and a list of their friends (including picture)
- showcase your CSS knowledge
Extra
- allow the user to filter the list by name and email
- allow filtering by gender
- allow the user to sort the list as they wish
- provide suggestions for auto-complete in the name/email filter
Sample setup (If you don't have your own)
You can run this using npm install and then npm start it will run the applicatuin in http://localhost:8080
- For this to work you will need
npmandnodeinstalled on your system - You don't have to use this setup, it's just to make your life easier
- Data can be found in
data.json