GithubHelp home page GithubHelp logo

doc22940 / stargraph Goto Github PK

View Code? Open in Web Editor NEW

This project forked from evermax/stargraph

1.0 1.0 0.0 265 KB

Build a graph of the stars of Github repositories

Home Page: https://stargraph.co

License: MIT License

Go 97.57% Makefile 0.35% HTML 2.08%

stargraph's Introduction

Stargraph

The perfect tool to plot a chart of stars on Github repositories

Build Status Build Status Coverage Status

There is a CLI where you provide your Github API token via -t and the :username/:reponame via the -r parameters. If you don't have a Github API token, you will be restricted by the API to 60 calls per hours.

An example on how to use it:

stargraph -t githubtoken -r evermax/stargraph

To get the project, just do go get github.com/evermax/stargraph

The program will produce 3 files:

  • graph.png which contains the graph plotted with gonum/plot. It currently doesn't support date display so you will end up with Unix timestamp on the X-axis
  • canvasDB.json which contains graph data to be used with CanvasJS
  • jqplotDB.json which contains graph data to be used with jqplot

You can also now use the lib part of the project to get the timestamps of the stars on a repository as a []int64

Disclaimer

This tool only take the current stars on the repository and place them on a graph where their are placed by order of apparences. That is why it will never provide you with a shrinking graph/a graph going down.

It is still a funny way to see it the repo has a good growth. You just need to pay attention to the last star date.

Demo

I made a proof of concept for this project on Stargraph.co. You can there provide a Github API token or log in with Github and try it!

Stargraph structure

The structure of the website should be something like this:

Architecture

Where you have an API and a website talking to that API, asking for the backend to get the data for a Github repo. If the repo does exist it will return a ressource URL where the client should query periodically to know if the data is ready. Service job will then be triggered so that the data is fetched. Structure/behavior of the API

The services are divided in two: Creators and Updators. The creator will create a record in the database and get the data for the first time. The updator will check if there was any change in the stars, if not it will just leave the data as it is, if so it will update the data that are not correct. different services and setup for them

Each service should be a microservice using this very intersting post from codeship.

Contributions

Contributions to that project are more than welcome, especially... for everything! You are welcome to talk to me about it on Golang slack. (If there is a need for it, I might make a channel) Request an invite if you are not already on the channel.

stargraph's People

Contributors

evermax avatar bronzdoc avatar riccardofreixo avatar

Stargazers

Acampbell avatar

Watchers

 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.