Giter Club home page Giter Club logo

gitstats's Introduction

gitstats

This is the repository that powers gitstats.report.

Code

The repo is organised as:

  • frontend: This is a react application, deployed via Netlify
  • backend: This is a serverless application, deployed to AWS Lambda
  • shared: This contains typescript interface definitions that are shared between frontend and backend

The shared components are not automatically updated after changes. Whenever shared code is changed:

  1. Run npm run build inside shared
  2. Run yarn add '../shared' inside frontend or backend

gitstats's People

Contributors

arjunattam avatar

Stargazers

mustafa avatar Leho Kraav avatar  avatar

Watchers

Leho Kraav avatar  avatar  avatar

Forkers

adeelahmad

gitstats's Issues

Authentication improvements

  • integrate lock widget
  • change name of tenant "gitstats-frontend-dev" right now -- if it is user facing
  • increase expiry time for logging out
  • "your teams" in the top nav
  • "loading your teams" after log in
  • test sign up flow

Auto-refresh mock data on home page

  • call API from frontend code
  • update authorizer to bypass home page calls
  • before caching, add date as param to url (ensure url has all necessary params)
  • save results to cache, define the key to cover invalidation scenarios
  • fetch results from cache whenever available
  • check loader in homepage view

Median time to comment improvements

  • Not clear that this includes approvals - maybe rename this to time to review?
  • User needs visibility across members - to be able to prompt them to speed up

PR timeline chart fixes

  • show status of PR next to the name
  • PR name should feel click-able
  • change row background on hover to improve readability
  • convert dots into lines
  • chart filters: open, merged, reviewed, no reviews, slow to merge

caching fixes

  • add user to cache key
  • add date (week start) to cache key

Fix 429 on GitHub API

on the stats endpoint

2018-09-29 19:21:20.423 (+05:30)	be909871-c3ee-11e8-bf8f-c9206e69ef22	(node:1) UnhandledPromiseRejectionWarning: StatusCodeError: 429 - {"statusCode":429,"error":"Too Many Requests"}
    at new i (/var/task/webpack:/node_modules/request-promise-core/lib/errors.js:32:1)
    at G.callback (/var/task/webpack:/node_modules/request-promise-core/lib/plumbing.js:104:1)
    at G.e.callback.t.callback [as _callback] (/var/task/webpack:/node_modules/request-promise-core/lib/plumbing.js:46:1)
    at G.t._callback.t.callback.t.callback [as callback] (/var/task/webpack:/node_modules/request/request.js:185:1)
    at emitTwo (events.js:126:13)
    at G.emit (events.js:214:7)
    at G.<anonymous> (/var/task/webpack:/node_modules/request/request.js:1157:1)
    at emitOne (events.js:116:13)
    at G.emit (events.js:211:7)
    at IncomingMessage.<anonymous> (/var/task/webpack:/node_modules/request/request.js:1079:1)
2018-09-29 19:21:20.423 (+05:30)	be909871-c3ee-11e8-bf8f-c9206e69ef22	(node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 12)

VPC configuration

the current VPC configuration on AWS is turning out to be costly -- the NAT Gateway is charged by the hour, and is required for the Lambda functions to make API calls outside the network (to GitHub eg). Can we explore reverting to the earlier non-VPC configuration, without the gateway, but still use ElastiCache?

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.