🐙 Share your Github stats for 2020 on Twitter

Overview

Year on Github 🐙

Heroku App Status

Share your Github stats for 2020 on Twitter.

This project contains a small web app that let's you share stats about your Github activity from last year. It's like Spotify's "year in review" but for Github. The app is built with Streamlit, queries Github's API via ghapi, and let's you share the generated stats directly on Twitter.



🎉 Try it out: gh2020.jrieke.com 🎉



For updates follow me on Twitter and if you like this project, please consider sponsoring ☺️




Note: The steps below are only required if you want to work on the app. If you just want to use it, go here.

Installation

git clone https://github.com/jrieke/my-year-on-github.git
cd my-year-on-github
pip install -r requirements.txt

Known issues

  • Doesn't work with Python 3.8 and 3.9! Both versions throw an error related to ghapi/multiprocessing that I couldn't resolve yet (RuntimeError: An attempt has been made to start a new process before the current process has finished its bootstrapping phase and subsequently an EOFError). Please use Python 3.7 for now.

  • ghapi has (as of 26 December 2020) a small bug in the paged method (see here), which may cause problems, therefore the commands above will install it from my fork (you can also install it manually from there with pip install -U git+https://github.com/jrieke/ghapi).

Running locally

streamlit run app/main.py

Make sure to run always from the my-year-on-github dir (not from the app dir), otherwise the app will not be able to find the css file.

Deploying to Heroku

First, install heroku and login. To create a new deployment, run inside my-year-on-github:

heroku create
git push heroku main
heroku open

To update the deployed app, commit your changes and run:

git push heroku main

TODO

PRs are welcome! Please open an issue before you start working to coordinate.

  • New stars for repos >40k stars are not properly calculated because the Github API only returns the first 40k stars. Improve this by using the current stargazers_count to calculate/estimate the number of new stars.
  • Maybe: Use stargazers_count in query_repo so it's not required to read the last page of stargazers. This requires to disable hashing for stargazers_count in streamlit's cache function.
  • Right now, new stars for 2021 are also counted. Fix this.
Owner
Johannes Rieke
Machine learning engineer. Computational Neuroscience @ TU Berlin
Johannes Rieke
Boto3 code assistance for any API in any IDE, always up to date

botostubs Gives you code assistance for any boto3 API in any IDE. Get started by running pip install botostubs Demo Features PyPI package automaticall

Jeshan Giovanni BABOOA 94 Nov 14, 2022
WILSON Cloud Respwnder is a Web Interaction Logger Sending Out Notifications with the ability to serve custom content in order to appropriately respond to client-issued requests.

WILSON Cloud Respwnder What is this? WILSON Cloud Respwnder is a Web Interaction Logger Sending Out Notifications (WILSON) with the ability to serve c

48 Oct 31, 2022
Flood discord webhooks

Webhook-Spammer Flood discord webhooks Asynchronous webhook spammer Fast & Efficient Usage - Use it with atleast 500 threads Put a valid webhook Use a

trey 1 Apr 22, 2022
A tool for extracting plain text from Wikipedia dumps

WikiExtractor WikiExtractor.py is a Python script that extracts and cleans text from a Wikipedia database dump. The tool is written in Python and requ

Giuseppe Attardi 3.2k Dec 31, 2022
ZELDA USERBOT adalah userbot Telegram modular yang berjalan di Python3 dengan database sqlalchemy.

ZELDA USERBOT TELEGRAM Userbot Yang Di Buat Karena Sering Gabut Di Telegram. ZELDA USERBOT adalah userbot Telegram modular yang berjalan di Python3 de

1 Dec 23, 2021
Telegram Auto Filter Bot

Pro Auto Filter Bot V2.o Hey Mo Tech, I'm an Autofilter bot v2.O and you can not Add Me to your Group. I was made for this one group. So don't waste y

14 Oct 20, 2021
Automatically check for free Anmeldung appointments.

Berlin Anmeldung Appointments (Python) This Python script will automatically check for free Anmeldung appointments in Berlin, and find them for you. T

Martín Aberastegue 6 May 19, 2022
Tools to help record data from Qiskit jobs

archiver4qiskit Tools to help record data from Qiskit jobs. Install with pip install git+https://github.com/NCCR-SPIN/archiver4qiskit.git Import the

0 Dec 10, 2021
RequestTrackerBot - Request Tracker Bot With Python

Request Tracker Bot This is a Request Tracker Bot repo, It is for those who uplo

Prince Jaiswal 1 Dec 30, 2021
JAWS Pankration 2021 - DDD on AWS Lambda sample

JAWS Pankration 2021 - DDD on AWS Lambda sample What is this project? This project contains sample code for AWS Lambda with domain models. I presented

Atsushi Fukui 21 Mar 30, 2022
A telegram smoot and high quality music player bot.

▪︎ Music Player ▪︎ A smooth telegram music bot with high quality songs ■ [Features] • Fast Starts streaming your inputs while downloading and converti

Simple Boy 3 Feb 05, 2022
WhatsApp Api Python - This documentation aims to exemplify the use of Moorse Whatsapp API in Python

WhatsApp API Python ChatBot Este repositório contém uma aplicação que se utiliza

Moorse.io 3 Jan 08, 2022
QR-Code-Grabber - A python script that allows a person to create a qr code token grabber

Qr Code Grabber Description Un script python qui permet a une personne de creer

5 Jun 28, 2022
Black-hat with python

black-hat_python Advantages - More advance tool Easy to use allows updating tool update - run bash update.sh Here -: Command to install tool main- clo

Hackers Tech 2 Feb 10, 2022
twitter bot tha uses tweepy library class to connect to TWITTER API

TWITTER-BOT-tweepy- twitter bot that uses tweepy library class to connect to TWITTER API replies to mentions automatically and follows the tweet.autho

Muziwandile Nkomo 2 Jan 08, 2022
Playing around with the slack api for learning purposes

SlackBotTest Playing around with the slack api for learning purposes and getting people to contribute Reason for this Project: Bots are very versatile

1 Nov 24, 2021
Unlimited Filter Telegram Bot 2

Mother NAther Bot Features Auto Filter Manuel Filter IMDB Admin Commands Broadcast Index IMDB search Inline Search Random pics ids and User info Stats

LɪᴏɴKᴇᴛᴛʏUᴅ 1 Oct 30, 2021
A Python Script to scan through an Instagram account to find all the followers and followings.

Instagram Followers Scan A Python Script to scan through an Instagram account to find all the followers and followings. You can also get filtered list

Nityasmit Mallick 6 Oct 27, 2022
Simple script to ban bots at Twitch chats using a text file as a source.

AUTOBAN 🇺🇸 English version Simple script to ban bots at Twitch chats using a text file as a source. How to use Windows Go to releases for further in

And Paiva 5 Feb 06, 2022
Asca - Antiscam Discord Bot With Python

asca Antiscam Discord Bot Asca moderates scammers and deletes scam messages Opti

11 Nov 01, 2022