Git Product home page Git Product logo

startrack-js's Introduction

GitHub Star History and Stats - based on JavaScript only, no server side!

Try it now: https://seladb.github.io/StarTrack-js/

Main features

  • View a GitHub repo star history
  • Show stargazer stats such as average number of stars per day, max stars in one day, etc.
  • Supports showing multiple repos at the same time (very useful for comparison)
  • Provide GitHub authentication (via access token) to overcome GitHub API rate limiter which limits the number of API calls without authentication. The authentication details are stored locally and not sent to any server
    • By default they're stored in the browser's session storage
    • The user can choose to store them in the browser's local storage for longer persistence
  • Preloading repos by URL, for example: https://seladb.github.io/StarTrack-js/#/preload?r=seladb,pickledb-rs will preload seladb/pickledb-rs upon loading the page

What's new in version 2.1?

  • Added a checkbox to sync the stats with the current chart view displayed. This is useful for viewing stats on specific dates
  • You can now paste a GitHub link instead of typing the username and repo name, and they will be parsed automatically
  • Added a link to the GitHub repo in the badge displaying the repo details
  • Preloading screen: fix decreasing transition in progress bar when loading the next repo
  • All React components were replaced from class to function components and are using React Hooks

What's new in version 2.0?

  • A complete rewrite using React and modern frontend technologies
  • Significant UI improvements (basically everything looks much better now :-) )
  • The chart component has been replaced and it's now easier to navigate, zoom in/out, etc.
  • Added an option to remove repos (in version 1.0 you could only add but not remove)
  • Added an option to stop loading data
  • Each repo has a dedicated color throughout the page (chart series, stats, close button)
  • Dedicated preloading screen
    • Shows a progress bar for each repo separately
    • Shows errors for repos which were not loaded successfully
  • GitHub authentication improvements
    • When logged in, a new tooltip shows where the access token is stored (browser's session storage or local storage)
    • User + password authentication was removed as it's no longer supported by GitHub

Technical details

This project is built on React and deployed on GitHub Pages. It doesn't have a backend so all of the data is stored locally on the browser and nothing is passed to any server (other than GitHub API to fetch the stargazer data).

It uses the following npm packages:

GitHub pages deployment status: Build Status

To run it locally follow these steps:

  • Clone this repo: git clone https://github.com/seladb/StarTrack-js.git
  • Enter the repo directory: cd StarTrack-js
  • Install the node modules required for this app: npm install
  • Run it locally: npm start

startrack-js's People

Contributors

ad-si avatar seladb avatar veysel avatar waldyrious avatar

Stargazers

 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.