└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Front-end test assignment 2 | 3 | ## What is expected 4 | An app that connect to the Github API, and list all public repositories from an user, and the last commits for the repositories. 5 | 6 | ## Tasks 7 | 8 | ### 1. Connect to github API 9 | Connect to Github API, and list all public repositories from your user. Alternatively use the `reactjs` user. 10 | Create a page that list the public repositories. 11 | 12 | ### 2. Load commits 13 | After a repository is clicked, the user must be shown a page with the last 20 commits on that repository, also a search field for filtering the commits by the term inserted into the field. 14 | 15 | ``` 16 | Feel free to choose if you are going to use the Rest API or the GraphQL API, and what subset of information you gonna show into each page. 17 | ``` 18 | 19 | ## Bonus Tasks 20 | - Use some modern css solution (CSS Modules, Styled-components, etc); 21 | - Endless scrolling for the commits page; 22 | - Make it possible to change the order the repositories are shown (By stars, name, etc); 23 | - Component Library (Storybook.js, Styleguidist, etc); 24 | - Server side rendering. 25 | 26 | # Solution 27 | - Use `reactjs`, you can start with a simple `create-react-app` structure and work from there; 28 | - Use some state managing solution; 29 | - Use ES6+ features and write down in the readme why you used and for what, for at least 2 of them; 30 | - Write unit tests and any other test you may find helpful or important to have; 31 | - Keep performance and corner cases in mind; 32 | - Be creative and show us what you got. 33 | 34 | # Delivery 35 | - **Don't** fork this project. Create a new repository in your account and send us the URL; 36 | - Create a readme file with the instructions to run the project and the tests, and add any comment that you think is relevant. 37 | --------------------------------------------------------------------------------