https://github.com/saadazghour/frontend-coding-challenge
:hammer: Web App that liste the most starred Github repos that were created in the last 30 days. You'll be fetching the sorted JSON data directly from the Github API .
https://github.com/saadazghour/frontend-coding-challenge
challenge-solved coding-challenge coding-challenges front-end-app github-api hidden-founders javscript reactjs
Last synced: 9 months ago
JSON representation
:hammer: Web App that liste the most starred Github repos that were created in the last 30 days. You'll be fetching the sorted JSON data directly from the Github API .
- Host: GitHub
- URL: https://github.com/saadazghour/frontend-coding-challenge
- Owner: saadazghour
- Created: 2019-05-31T03:00:23.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-26T10:48:39.000Z (about 3 years ago)
- Last Synced: 2025-03-31T04:41:12.212Z (11 months ago)
- Topics: challenge-solved, coding-challenge, coding-challenges, front-end-app, github-api, hidden-founders, javscript, reactjs
- Language: JavaScript
- Homepage:
- Size: 2.8 MB
- Stars: 7
- Watchers: 0
- Forks: 2
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://github.com/Azghour-Saad/frontend-coding-challenge) [](https://standardjs.com)
# Front-end coding challenge
## Idea of the App
The task is to implement a small webapp that will list the most starred Github repos that were created in the last 30 days. You'll be fetching the sorted JSON data directly from the Github API (Github API explained down below).
## Features
- [x] As a User I should be able to list the most starred Github repos that were created in the last 30 days.
- [x] As a User I should see the results as a list. One repository per row.
- [x] As a User I should be able to see for each repo/row the following details :
- Repository name
- Repository description
- Number of stars for the repo.
- Number of issues for the repo.
- Username and avatar of the owner.
- [x] As a User I should be able to keep scrolling and new results should appear (pagination).
## How to get the data from Github
To get the most starred Github repos created in the last 30 days (relative to 2017-11-22), you'll need to call the following endpoint :
`https://api.github.com/search/repositories?q=created:>2017-10-22&sort=stars&order=desc`
The JSON data from Github will be paginated (you'll receive around 100 repos per JSON page).
To get the 2nd page, you add `&page=2` to the end of your API request :
`https://api.github.com/search/repositories?q=created:>2017-10-22&sort=stars&order=desc&page=2`
To get the 3rd page, you add `&page=3` ... etc
You can read more about the Github API over [here](https://developer.github.com/v3/search/#search-repositories
).
## ScreenShoot

Here's what each element represents :

## Technologies Used in Project
- React
- Material - UI
- Moment.js
- Axios
- Github API
## Setup
```
git clone https://github.com/Azghour-Saad/frontend-coding-challenge.git
cd frontend-coding-challenge
npm install
```
## Running the app
To get the app up and running run :
```
npm start
```
Finnaly, The project will be available at : **http://localhost:3000 to view it in the browser.**