Coder Social home page Coder Social logo

stormalone / ghw-drawer Goto Github PK

View Code? Open in Web Editor NEW

This project forked from muitool/ghw-drawer

0.0 1.0 0.0 11.9 MB

Github Worlds Drawer Live Site

Home Page: https://muitool.github.io/ghw-drawer/

License: MIT License

HTML 4.55% JavaScript 95.45%

ghw-drawer's Introduction

ghw-drawer

Github Worlds drawer is a visualization toolkit that provides Views into JSON data that comes from the Github GraphQL API. It is called Github Worlds drawer because there is also a Github Worlds menu which displays the same data and views but with the Menu being the primary navigation element instead of the Drawer

This demo is an extension of mui-drawer and it is assumed that you have already reviewed the concepts and documentation associated with that repo.

A Data Visualization Framework

We are in the process of developing a simple generic data visualization framework in the context of a Material-UI Tutorial with the main goal of using this framework as a test bed for elucidating different aspects of Material-UI. So the tutorial and the framework will develop over time in parallel. As more interesting aspects of the framework get developed, the associated documentation teaching the Material-UI concepts will follow.

The Overall Architecture of the Framework

The concept is simple. The framework supports views and JSON data.

The views are any React component that can be accepted inside withStyles. The first example of this is a Grid List with Cards inside them.

The JSON data comes from any API call or endpoint that returns JSON data. The API call can be GraphQL, REST, or static JSON data sources such as JSON files sitting on your local disk, your cloud server or inside your Github repo.

Github World Views

The tutorial repository for ghw is called ghw-drawer and is located here on Github or simply click on the Github icon in the upper right hand corner of the AppBar.

Github Worlds (ghw) is a set of views coming from the Github GraphQL API. Using this data visualization framework one can develop new views of data for repositories, users, statistics and anything else that can be derived from this data possibly in concert with other data sets.

The data sets for ghw are abstracted away from the underlying visualization so that the only thing needed to display the data is a JSON data file. Eventually, we might provide a live view of the data coming from the Github GraphQL API; but for now the priority is to only require JSON data sets. The generation of the JSON data sets is described in another section of the tutorial. For now, we are providing a test set of JSON data files to better understand the structure of the data along with the program which interprets the data and a sample set of views.

Users are welcome to generate out their own custom views along with the data sets to their liking.

One repo many views

In the current incarnation of the demo there are four views.

  • view1: vertical scrollable gridlist of cards
  • view2: horizontal single line scrollable gridlist of cards
  • view3: table view with react-autosuggest
  • view4: vertical scrollable gridlist of cards with no avatars

One view many repos

Each view in the system is accessible via the Views menu. The repo dropdown allows one to switch between different Github repositories while staying on the same view. If you select a different repo the same view will be persistent.

Data Structure Examples

AppBar

At the top of the hierarchy are ways to organize information or websites. All websites need to have an AppBar. A nice example of an AppBar in action is the Material-UI Home Page. There you will see the Icon button for drawer open and close. In the repos in this tutorial you will see the same functionality.

Gridlists

The Gridlist is used to display a collection of Cards in both a single horizontal line and with six cards per row.

Cards

The cards in this demo contain different data types about each user that commits to a Github repository including:

  • the user's name
  • the user's location
  • the user's username
  • a link to the avatar of the user

One can also grab data surrounding stars and forks as well.

ghw-drawer's People

Contributors

stormasm avatar

Watchers

Storm Alone avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.