GitHub

GitHub Integrations

Fetch live repository statistics, issues, and pull requests directly from the VeriWorkly repository.


Description

VeriWorkly is built in the open. The GitHub API module acts as a highly optimized proxy that fetches, caches, and serves live metrics directly from the official VeriWorkly repository.

By routing these requests through our backend rather than fetching them directly from the client, we achieve three critical benefits:

  1. Zero Client-Side Rate Limiting: Users never hit GitHub's restrictive unauthenticated API limits.
  2. Token Security: GitHub Personal Access Tokens (PATs) remain safely isolated on the server.
  3. Blazing Fast Responses: Data is served directly from our database/Redis cache rather than waiting on upstream network requests.

Sync Architecture & Latency

Data is not fetched in real-time on every GET request. Instead, we use a background polling mechanism to maintain system health:

  • Automated Sync: A background worker (runGithubSyncOnce.ts) runs on a cron schedule to poll GitHub and update our internal database.
  • Latency Expectation: Because of this caching layer, newly opened issues or merged PRs may take a short time to reflect on the VeriWorkly dashboard.
  • Resilience: If GitHub experiences an outage, this API will gracefully fall back to serving the last known cached state.

Authentication & Access

MethodEndpointAccess LevelRequirement
GET/stats, /issuesPublicNone
POST/syncAdminValid session cookie with admin privileges.

The manual /sync endpoint is strictly protected. Unauthorized calls will be rejected with a 401 Unauthorized status.


Available Endpoints


On this page

Edit on GitHub