Skip to main content

Developer persona and analytics toolkit for GitHub profiles

Project description

GitPersona

Overview

GitPersona is a lightweight developer persona and analytics toolkit for GitHub profiles. It fetches public GitHub data on-demand and performs local analysis to produce a concise persona summary and simple stats.

Install (recommended: virtualenv)

python3 -m venv .venv
source .venv/bin/activate
python -m pip install -U pip setuptools wheel
python -m pip install -r requirements.txt
pip install -e .

Run tests

.venv/bin/python -m pytest -q

Usage

Command-line:

gitpersona analyze <username>
# Example:
gitpersona analyze octocat --output octocat.json

Python API:

from gitpersona.github_client import GitHubClient
from gitpersona.analysis import analyze_user

client = GitHubClient()
repos = client.fetch_user_repos('octocat')
report = analyze_user('octocat', repos)

Privacy

All processing is local. GitPersona fetches public GitHub data and does not store it permanently.

Notes

  • To increase GitHub API rate limits, set GITHUB_TOKEN in your environment:
export GITHUB_TOKEN=ghp_...
  • The project uses a minimal requests-based client. For larger-scale usage consider hitting GraphQL or adding caching and rate-limit handling.

GitPersona

Lightweight developer persona and analytics toolkit for GitHub profiles.

Install:

pip install -r requirements.txt
pip install .

Usage:

gitpersona analyze <username>

Or from Python:

from gitpersona.github_client import GitHubClient
from gitpersona.analysis import analyze_user

client = GitHubClient()
repos = client.fetch_user_repos('octocat')
report = analyze_user('octocat', repos)

Privacy:

All processing is local. GitPersona fetches public GitHub data and does not store it permanently.

GitPersona

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitpersona-0.1.1.tar.gz (16.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gitpersona-0.1.1-py3-none-any.whl (17.0 kB view details)

Uploaded Python 3

File details

Details for the file gitpersona-0.1.1.tar.gz.

File metadata

  • Download URL: gitpersona-0.1.1.tar.gz
  • Upload date:
  • Size: 16.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for gitpersona-0.1.1.tar.gz
Algorithm Hash digest
SHA256 cd146489621949a68c130a8b89cb359ec220d3cf3b800524c2cc851f1ffd90d1
MD5 74dea9556437b3702121f6b54ad50a7e
BLAKE2b-256 c6f4e256cb4bf0eed5b8575a20d20a3ecb477f6e23ac192bbf73e15a95fd239f

See more details on using hashes here.

File details

Details for the file gitpersona-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: gitpersona-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 17.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for gitpersona-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 006d75ab046860a60e667a8c7f6ee05eb0aaf3f786c3653ccbd1c9aef85deb0d
MD5 93ed881005c1d7b77fb2108d91c73338
BLAKE2b-256 2c545bb4beed921c686b518a790a476e283d3c4d04e94a1d0f77743c6da76456

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page