semvec/pypi-packages huggingface dataset:
githubcontribs 0.3.0
Simple analytics for GitHub contributions across an organization.
Requires Python: <3.14,>=3.10

# githubcontribs: Analyze GitHub contributions

A simple Python API to fetch and plot GitHub contributions across repositories.

Install:

```bash
pip install githubcontribs
```

Fetch data:

```python
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:

```python
plotter = githubcontribs.Plotter(df)
plotter.plot_total_number_by_author_by_type()
```

<img width="500" height="624" alt="image" src="https://github.com/user-attachments/assets/29a872ac-e244-4ac8-a24f-a66706a20761" />

```python
plotter.plot_number_by_month_by_author()
```

<img width="500" height="624" alt="image" src="https://github.com/user-attachments/assets/cfa31614-352b-469f-bf48-eeaca29cd5dd" />

If you want to make such analyses reproducible: [here](https://lamin.ai/laminlabs/lamindata/transform/X1ZxsmZxISxW) 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.

```python
fetcher.fetch_repos()
```
hopara 1.23.0
Hopara Python Library

# Pyhopara

Pyhopara is the Hopara Python SDK. It's main purpose is to ingest data from Python/Pandas.

### Install
```shell
pip install hopara
```

---
Before using Pyhopara you should setup your environment. This is achieved by installing the Hopara CLI and sign-in or sign-up:
```shell
npm install -g hopara
hopara signup
```

---

Basic usage:

```python
import hopara as hp

hopara = hp.Hopara()

table = hp.Table('table_name')
table.add_column('column1', hp.ColumnType.INTEGER)
table.add_column('column2', hp.ColumnType.STRING)

hopara.create_table(table)

rows = [{'column1': 1, 'column2': 'a'},
        {'column1': 2, 'column2': 'b'},
        {'column1': 3, 'column2': 'c'}]
hopara.insert_rows(table, rows)
```

With pandas DataFrame:

```python
import hopara as hp
import hopara.from_pandas as hpd
import pandas as pd

hopara = hp.Hopara()

df = pd.DataFrame({
    'column1': [1, 2, 3],
    'column2': ['a', 'b', 'c']
})
table = hpd.get_table('table_name', df)

hopara.create_table(table)
hopara.insert_rows(table, hpd.get_rows(df))
```

Please check the ``Hopara`` and ``Table`` sections for additional options.