I'm a software engineer at a startup and I constantly build my own projects, but most of my GitHub
activity is in private repos and I often was curious how much code do I produce in total and how do
I compare to my colleagues/friends. So I built this dashboard to show all the info you could want,
made it look cool and added some competitive aspect to it.
I'm aware that line-counts and commits are not good metrics for productivity, but it is still
interesting to track them. This is not a commercial product, just an interesting toy for developers
which can also be useful to notice trends in your work.
While building it I found that GitHub doesn't have any native API to share only the contribution
activity without requiring read or write permissions on the repos. I didn't want the app to require
any tokens with access to your repos, so I landed on a solution where an npm command
(npx @yaroslavhaidash/gitstats-cli@latest link) would count the activity using the git logs locally
and then only upload the numbers. This way no sensitive data ever leaves your computer.
To use it, simply sign in with GitHub, run one npm command and your statistics will automatically
backfill from up to one year ago. One limitation is that it will only backfill statistics found on
the device you connected, if you use multiple computers for different repos, you will have to run
the npm command from all of them.
You can preview it with seeded demo data without registering here: https://gitstats.org/demo
I'm a software engineer at a startup and I constantly build my own projects, but most of my GitHub activity is in private repos and I often was curious how much code do I produce in total and how do I compare to my colleagues/friends. So I built this dashboard to show all the info you could want, made it look cool and added some competitive aspect to it.
I'm aware that line-counts and commits are not good metrics for productivity, but it is still interesting to track them. This is not a commercial product, just an interesting toy for developers which can also be useful to notice trends in your work.
While building it I found that GitHub doesn't have any native API to share only the contribution activity without requiring read or write permissions on the repos. I didn't want the app to require any tokens with access to your repos, so I landed on a solution where an npm command (npx @yaroslavhaidash/gitstats-cli@latest link) would count the activity using the git logs locally and then only upload the numbers. This way no sensitive data ever leaves your computer.
To use it, simply sign in with GitHub, run one npm command and your statistics will automatically backfill from up to one year ago. One limitation is that it will only backfill statistics found on the device you connected, if you use multiple computers for different repos, you will have to run the npm command from all of them.
There is more information about how it works in https://gitstats.org/docs. The server is closed-source, but https://github.com/yaroslavhaidash/gitstats-cli is public and open-source with MIT so anyone can check out how it works.
Any feedback on the mechanism or the UI is very welcome!