Skip to content

API Documentation

Public endpoints for GitHub repo intelligence

Base URL: https://startrail.dev

All endpoints are rate-limited to 60 requests per minute per IP. Cached responses don't count against the limit. Responses are cached (star history: 6h, others: 1h). No authentication required.

GET/api/stars?repo=owner/repo

Fetch star history for a repository. Returns daily star counts over time.

Parameters

reporequirede.g. facebook/react

Response

{ "repo": "facebook/react", "data": [{ "date": "2023-01-01", "count": 200000 }], "cached": false }
GET/api/trending?count=10

Fetch trending repositories created in the last 30 days.

Parameters

countoptionale.g. 10

Response

{ "repos": ["owner/repo", ...] }
GET/api/org?org=vercel

Fetch all public repositories for a GitHub organization, sorted by stars.

Parameters

orgrequirede.g. vercel

Response

{ "org": "vercel", "orgInfo": { ... }, "repos": [{ "full_name": "vercel/next.js", "stars": 120000, ... }] }
GET/api/deps?repo=owner/repo

Fetch dependency tree for a repository. Uses GitHub SBOM or manifest file parsing.

Parameters

reporequirede.g. vitejs/vite

Response

{ "repo": "vitejs/vite", "dependencies": [...], "topDeps": [...], "totalCount": 1203, "source": "GitHub Dependency Graph (SBOM)" }
GET/api/releases?repo=owner/repo

Fetch release history for a repository.

Parameters

reporequirede.g. vercel/next.js

Response

{ "repo": "vercel/next.js", "releases": [{ "tag": "v14.0.0", "name": "Next.js 14", "date": "...", ... }] }
GET/api/contributors?repo=owner/repo

Fetch top contributors and repo health metrics.

Parameters

reporequirede.g. facebook/react

Response

{ "repo": "...", "contributors": [{ "login": "...", "contributions": 1234, ... }], "repoInfo": { ... } }

RSS Feeds

Trending category pages have RSS feeds at /trending/[category]/feed