Skip to content

Repository files navigation

🌍 Impact Tracker

Quantifying the Social Pulse of Open Source.

Impact Tracker is a next-generation GitHub App that analyzes repositories to measure their social impact. Using AI-driven classification, geographic diversity mapping, and community health scoring, we help organizations and contributors understand the real-world value of their code.

Impact Score CI Status License: MIT


Tech Stack

Languages

Languages

Web & Backend Stack

Web Stack

Databases & Tools

Databases and Tools


🏛️ Social Impact & Civic Mission

Impact Tracker is built with a primary focus on Civic Technology, Social Good, and Transparency in Government and Open Source. By providing quantifiable metrics for open-source social impact, we aim to:

  • Democratize Data: Make impact metrics accessible to non-profits and community-driven projects.
  • Support Global Goals: Align open-source work directly with the United Nations Sustainable Development Goals (SDGs), specifically:
    • Goal 11 (Sustainable Cities and Communities): Fostering inclusive and sustainable urbanization through civic tech.
    • Goal 16 (Peace, Justice and Strong Institutions): Promoting transparent, accountable, and inclusive institutions at all levels via open-source governance.
    • Goal 9 (Industry, Innovation, and Infrastructure): Building resilient open-source infrastructure.
  • Inclusion & Diversity: Promote geographic equity in software development by tracking contributor diversity.

Features

  • 🧬 AI Sector Classification — Automatically classifies repos using Google Gemini AI
  • 🌍 Geographic Diversity — Maps contributor locations across 500+ cities worldwide
  • 🌱 First-Timer Tracking — Rewards repos that welcome new developers
  • 🏅 Embeddable Badges — Dynamic SVG badges for your README
  • 📊 Impact Dashboard — Public, shareable dashboard with charts and maps
  • 🔗 Deep GitHub Integration — REST API, GraphQL, Webhooks, and OAuth

Quick Start

Prerequisites

  • Node.js 20+
  • pnpm 9+
  • Docker (for PostgreSQL + Redis)

Setup

# Clone the repo
git clone https://github.com/your-org/impact-tracker.git
cd impact-tracker

# Install dependencies
pnpm install

# Copy environment template
cp .env.example .env
# Edit .env with your GitHub App credentials and API keys

# Start PostgreSQL + Redis
docker compose up -d

# Generate Prisma client
pnpm db:generate

# Push schema to database
pnpm db:push

# Start development servers
pnpm dev

The API runs on http://localhost:4000 and the dashboard on http://localhost:3000.


Embed a Badge

Add an impact score badge to your README:

[![Impact Score](https://site--impact-api--sz5jmqgz2jbh.code.run/api/badge/OWNER/REPO.svg)](https://site--impact-dashboard--sz5jmqgz2jbh.code.run/repo/OWNER/REPO)

Badge styles:

Style Example URL
Default /api/badge/owner/repo.svg
Flat /api/badge/owner/repo.svg?style=flat
SDG /api/badge/owner/repo.svg?style=sdg

Impact Scoring Model (0-100)

Dimension Points What it measures
Sector Relevance 30 AI classification + UN SDG alignment
Contributor Geography 25 Unique countries in contributor base
First-Timer Onboarding 20 Ratio of first-time contributors
Docs Accessibility 15 README quality + CONTRIBUTING + Code of Conduct
Community Health 10 Issue response time + PR merge rate + activity

See docs/scoring-model.md for detailed formulas.


GitHub API Integration

API Usage
REST API Repo metadata, contributors, README content, community profile
GraphQL API Contribution calendars, dependency graph manifests
Webhooks Push, pull_request, issues, star, installation events
OAuth Secure user login via GitHub identity

Architecture

impact-tracker/
├── apps/
│   ├── api/          # Node.js/Express backend (webhooks, scoring, badges)
│   └── web/          # Next.js 15 dashboard (React 19, Tailwind CSS 4)
├── packages/
│   ├── shared/       # Types, constants, utilities
│   ├── database/     # Prisma schema + client
│   ├── github-client/# Octokit wrappers (REST + GraphQL)
│   ├── classifier/   # Gemini AI + OpenRouter + rule-based fallback
│   ├── scorer/       # 5-dimension scoring engine
│   └── badge/        # SVG badge generator (badge-maker)
├── docs/             # API reference, scoring model, privacy policy
└── .github/          # CI/CD workflows

Privacy

  • Private repo data is never shared publicly and never used to train AI models
  • Data is deleted within 90 days of app uninstallation
  • See docs/privacy-policy.md for the full policy

License

MIT Made with love! And Passion! Open to Contribution!

About

An AI-driven engine for tracking and scoring the social impact of open-source projects. Features deep-scan contributor analysis, geographic impact mapping, and community health scoring. Built with Turborepo, Next.js, and Prisma.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages