Skip to content

1. Task Description

togiberlin edited this page Oct 8, 2020 · 1 revision

Github App

With any SPA framework of your choice, build a small app that lists all public repositories from the ​GitHub API and displays them. You have complete freedom about the design and technologies to use.

Requirements

  • Show a list of repositories (with pagination) displaying the name of the repositories along with any other important info about the repository in your opinion.
  • On click of a repository, show full details of the repository.
  • Add sorting options based on alphabetical order, number of stars and by latest commit.
  • Add search functionality to find specific repositories using the ​public search API​.
  • Include functionality to favorite/mark repositories using state management (Store it on the client side. No need to use any backend system).

Submission

Please, send the repository link or the compressed folder with the code to ********@******.com​. It is ok to have a public repository if you wish, for instance, if you want to set up CI. All developed code belongs to you, and we will not use it in any case. You have all the rights and feel free to attach any LICENSE to it. The purpose of this exercise is to propose a real-world example of a task similar to what we do at *********. Thus, we can have a sense of how you would approach a normal task in a relaxed environment.

Evaluation

Most probably, you will need to make decisions about which features to implement or even have new ideas about new cool functionality. Maybe you want to focus on the quality of a specific feature, you want to develop all the proposals, you have new ideas but focus less on the design, or you just don’t want to have an ugly-looking application. No matter which road you choose, do not forget to explain why you have decided to go through a specific path. In order to help you make those decisions, there are things that we value a lot and others that are a plus and thus secondary.

We strongly value​:

  • A README that states how to start the app locally and documents decisions during development.
  • Component-based architecture.
  • ES2016+ or TypeScript.
  • Code documentation.
  • Code style (e.g. AirBnb's or any other you like).
  • Tests (if they run on CI, even better).

Nice to have but not required:

  • All proposed functionality developed.
  • Responsive design.
  • New features.
Clone this wiki locally