A simple Python API to fetch and plot GitHub contributions across repositories.
Install:
pip install githubcontribsFetch data:
import githubcontribs
fetcher = githubcontribs.Fetcher("laminlabs") # pass the organization
df = fetcher.fetch_contribs("lamindb") # pass one or multiple repositories
df.head()
#> date author repo type title ...
#> 2025-10-11 falexwolf lamindb commit 🚸 Better UX for `lamin annotate` CLI command ...
#> 2025-10-10 Koncopd lamindb commit 🐛 Various fixes for filtering (#3147) ...
#> 2025-10-10 falexwolf lamindb commit 🐛 Do not retrieve records from trash based on ...Plot data:
plotter = githubcontribs.Plotter(df)
plotter.plot_total_number_by_author_by_type()
plotter.plot_number_by_month_by_author()
If you want to make such analyses reproducible: here is how to track the notebooks, environments, and input & ouput data for these plots.
PS: You can also fetch all repos with activity in a year.
fetcher.fetch_repos()