Skip to content

An experimental visualization of contributions at Development Seed to repositories both within and outside of our organization

License

Notifications You must be signed in to change notification settings

developmentseed/contributor-network

Repository files navigation

Development Seed Contributor Network

The code behind https://developmentseed.org/contributor-network.

This visual is derived from the excellent ORCA top-contributor-network by Nadieh Bremer.

Quick Start

Prerequisites

  • uv for Python package management
  • A GitHub personal access token with public_repo scope

View Locally

cd dist
python -m http.server 8000

Then open http://localhost:8000/.

CLI Commands

All commands are run via uv run contributor-network <command>.

list-contributors

List all configured contributors by category:

uv run contributor-network list-contributors

discover

Find new repositories that DevSeed employees contribute to:

export GITHUB_TOKEN="your_token_here"
uv run contributor-network discover --min-contributors 2 --limit 50

This queries GitHub to find repos where multiple DevSeed employees have contributed, which are not yet in the configuration.

data

Fetch contribution data from GitHub for all configured repositories:

export GITHUB_TOKEN="your_token_here"
uv run contributor-network data data

Options:

  • --all-contributors: Include alumni/friends (not just current DevSeed employees)

csvs

Generate CSV files from the fetched JSON data:

uv run contributor-network csvs data

build

Build the static site to the dist/ folder:

uv run contributor-network build data dist

Full Workflow

To update the visualization with new data:

# 1. Set your GitHub token
export GITHUB_TOKEN="your_token_here"

# 2. (Optional) Discover new repos to add
uv run contributor-network discover --min-contributors 2

# 3. Edit config.toml to add/remove repos or contributors

# 4. Fetch data from GitHub
uv run contributor-network data data

# 5. Generate CSVs
uv run contributor-network csvs data

# 6. Build the site
uv run contributor-network build data dist

# 7. Preview locally
cd dist && python -m http.server 8000

Configuration

Edit config.toml to configure:

  • repositories: List of GitHub repos to track (format: "owner/repo")
  • contributors.devseed: Current DevSeed employees (format: github_username = "Display Name")
  • contributors.alumni: Friends and alumni (commented out by default)

Development

Code Quality

uv sync
uv run ruff check --fix
uv run ruff format
uv run pytest

Automated Rebuilds

We use workflow dispatch to rebuild the source data manually.

Branding

This visualization uses the Development Seed brand colors:

  • Grenadier (#CF3F02): Primary orange accent
  • Aquamarine (#2E86AB): Secondary blue
  • Base (#443F3F): Text color

License

This work was copied-and-modified from https://github.com/nbremer/ORCA and is licensed under the same (MPL).

About

An experimental visualization of contributions at Development Seed to repositories both within and outside of our organization

Resources

License

Stars

Watchers

Forks

Contributors 6