You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
app-ideas/Projects/GitHub-Status-App.md

2.1 KiB

GitHub Status

Tier: 1-Beginner

Web apps acquire data in many ways. Through user input in web pages, through API's to backend systems, from files and databases, and sometimes by "scraping" websites. The objective of the GitHub Status app is to introduce you to one way to scrape information from another web site.

GitHub Status uses the NPM Request package to retrieve the current GitHub site status from the GitHub Status web site. The Request package allows websites to be retrieved not to a browser window, but as a JSON document that can be readily accessed by your code.

Although this application specification relies heavily on Javascript, feel free to develop it using your language of choice!

User Stories

  • User can see the current status for GitHub Git operations, API Requests, Operational Issues, PRs, Dashboard, & Projects, Operational Notifications, Operational Gists, and Operational GitHub Pages as a list in the main app window.
  • User can retrieve the most recent status from the GitHub Status web site by clicking a 'Get Status' button.

Bonus features

  • User can see any of the GitHub components that are not in 'Operational' status highlighted by a different color, background animation, or any other technique to make it stand out. Use your imagination!
ghstatus.js

const request = require('request');
request('https://www.githubstatus.com/',  { json: true }, (err, res, body) => {  
    console.log(body);
});

Example projects

Peter Luczynski's example