GitHub repository discovery and migration prioritization system for sipgate's GitHub → Forgejo migration strategy.
Analyzes 200+ GitHub repositories to generate migration intelligence:
- Repository Discovery: Batch GraphQL queries with rate limit management
- Workflow Analysis: GitHub Actions complexity scoring via actionlint
- Dependency Mapping: Inter-repository dependency graph with topological sorting
- Priority Scoring: Weighted matrix (40% complexity, 60% criticality)
- Wave Grouping: Dependency-ordered migration waves
- Interactive Dashboard: Material React Table with filtering, CSV export
- Periodic Refresh: Scheduled re-scanning with incremental updates
Built with TypeScript, React, and Octokit following patterns from sipgate/workflows planning.
See docs/ for detailed implementation plans.
# Install dependencies
npm install
# Configure GitHub token
export GITHUB_TOKEN=ghp_xxx
# Run discovery
npm run discover
# Start dashboard
npm run devsrc/
├── api/ # GitHub API client, GraphQL queries, rate limiting
├── analysis/ # Workflow, dependency, ownership analysis
├── graph/ # Dependency graph, topological sorting
├── scoring/ # Priority matrix, wave grouping
├── dashboard/ # React UI, Material React Table
└── scheduler/ # Bree periodic refresh
This implementation follows Phase 1: Repository Intelligence from the migration strategy roadmap.
- Planning repository: moersener/workflows
- Plans:
.planning/phases/01-repository-intelligence/ - Research:
.planning/phases/01-repository-intelligence/01-RESEARCH.md
MIT