As a Frontend developer, we need more than making code to create pretty pages. So this test is going to be split into several sections with a different kind of challenges. You can choose between React, Angular, or Vue JS to create this project.
Create a free account here https://newsapi.org , news API has the news for different online newspapers, we want to connect our website with these services.
On the first challenge, we need to
- Create the account in https://newsapi.org
- Create a boilerplate project
- Show the list of categories in the homepage
- Show the headlines on the homepage
- Show the news filtered by categories on a new page
- Need to be a Single Page Application
- Need to be PWA
- Show images
- We are not going to evaluate your design choices regarding colours and fonts, but we are going to take on considering how the overall experience is.
As modern developers, we understand that PWA is the path to follow. In this point, we are going to apply as many good practices we can but mostly focus on offline content render and static content cache.
At least we should be able to
- Access offline to a previously visited content
- Have a proper Manifest in place
- Cache all the static content
Instead of waiting to have all the content before rending the page we should apply progressive loading. You can check this article about this point
Add at least 1 micro-interaction, you can understand a bit more about this topic in this article
This is the creative moment of the test, you can innovate as much as you want here.
Test all the things. We are going to focus on functional tests. We can use MochaJs or whatever else tool, but we need to be able to run all the tests headless from the command line. You can use docker for all the dependencies.
Document the project, how to spin up the project, how to run the tests.
The README file should have all the step to set up the project locally. Remember as less command for setting up the project much better.
After you have the documentation, create a repository in GitLab/Github/Bitbucket and send us the link of the repository to pablo.morales@mailmac.net
The time estimated for the project is between 1 and 5 hours if you feel that will take more you can cut corners, but that will affect the result of the test. Anyways you still have a complete week to finish the test after you received it.
We are going to give you feedback as fast as possible.