TestSource analyzes any GitHub repository, pull request, or issue and instantly tells you:
- Whether the project is ready for open-source contribution
- What parts should be tested
- The exact TestSprite workflow to run
Paste a GitHub link. Get a structured report in seconds.
🌐 Live App: https://testsource.netlify.app/
Open-source contributors often spend significant time figuring out whether a repository is worth contributing to. Important signals like contributor guidelines, issue readiness, project health, and testing setup are scattered across different parts of the repository.
TestSource analyzes a GitHub link and surfaces these signals instantly.
Instead of manually exploring a repository for several minutes, developers get a structured report in seconds that helps them decide:
- Is this project healthy and active?
- Is it ready for testing?
- What parts of the codebase should be tested?
- What TestSprite workflow should be used?
TestSource accepts three types of GitHub URLs and returns a tailored analysis for each.
Paste a repository URL (e.g. github.com/vercel/next.js) to receive:
- Repo Health — open issues, open PRs, recent merges, contributor count, latest release
- Contributor Readiness — presence of
CONTRIBUTING.md, issue/PR templates, Code of Conduct, good-first-issue labels - Pre-flight Checklist — README, license, build file, test directory, test framework detection
- TestSprite Readiness — project type detection, compatibility score, suggested testing mode, target modules
- Recommended TestSprite Workflow — scope, focus areas, and a ready-to-copy TestSprite prompt
- Overall Verdict —
Strongly test-ready,Moderately test-ready, orNeeds setup before contribution
Paste a PR URL (e.g. github.com/pnpm/pnpm/pull/10920) to receive:
- PR metadata (author, branches, additions/deletions, changed files)
- Diff scope classification — frontend, backend/API, mixed, or config/docs
- Changed areas and impacted modules
- Recommended TestSprite workflow scoped to the diff
Paste an issue URL (e.g. github.com/facebook/react/issues/28779) to receive:
- Issue status and quality signals
- Work-status detection (assignment, comments, linked PRs)
- Contributor signals and complexity estimate
- Recommended next action
- Issue quality score
- Paste a GitHub repository, PR, or issue URL into the input field
- TestSource detects the link type and calls the appropriate analysis API
- A structured report renders with color-coded signals (pass / warn / fail)
| Layer | Technology |
|---|---|
| Frontend | Next.js 15 (App Router), TypeScript, Tailwind CSS |
| API | Next.js Route Handlers |
| Data Source | GitHub REST API |
| Test Execution | Node.js microservice (runner-api) |
| E2E Testing | Playwright + TestSprite |
app/
page.tsx
api/
analyze/
analyze-pr/
analyze-issue/
testsprite/
components/
ReportCard.tsx
PRReportCard.tsx
IssueReportCard.tsx
RepoHealthSection.tsx
ContributorSection.tsx
PreflightChecklist.tsx
TestSpriteSection.tsx
WorkflowSection.tsx
VerdictBadge.tsx
lib/
github.ts
scoring.ts
types.ts
jobs.ts
runner-api/
testsprite_tests/
- Node.js 18+
(Optional)
- GitHub Personal Access Token (avoids API rate limits)
npm installCreate a .env.local file:
GITHUB_TOKEN=your_github_pat_here
RUNNER_API_URL=http://localhost:4000npm run devOpen:
http://localhost:3000
The testsprite_tests/ folder contains Playwright tests generated by TestSprite covering:
- Repository analysis rendering
- PR and Issue report generation
- Invalid URL validation
- 404 handling
- UI state and tab switching behavior
Tests can run directly with Playwright or through the TestSprite runner.