$ show mrshu/github-statuses
This repository implements a static site that reconstructs and visualizes GitHub's historical status incidents and downtime. It ingests the official GitHub Status history Atom feed (committed into git via Flat Data), parses entries into structured incident timelines with status transitions, downtime windows, and impacted components. The frontend displays a 90-day and all-time uptime overview, per-service uptime bars, an incident timeline with filters, and a rolling uptime chart. The system is designed as a data pipeline: a GitHub Action fetches the Atom feed daily, another Action runs the extractor script to produce parsed artifacts (CSV, JSONL), and a third Action deploys the static site to GitHub Pages. The repository also includes an experimental GLiNER-based component extraction fallback to infer affected services from incident postmortems when the structured data is missing. The codebase demonstrates strong craftsmanship with well-isolated pure functions, testable frontend modules, and defensive caching patterns, though it remains tightly coupled to GitHub's specific status page format and prose patterns.
The LLM identified 3 files worth highlighting for reuse:
A small, self-contained JavaScript module that reads and writes the view state (90-day vs all-time) to the URL hash using history.replaceState. It is dependency-free, CommonJS-exported for testability, and demonstrates a clean pattern for syncing UI state with the browser's navigation without a framework.
Contains a suite of pure utility functions (clipInterval, mergeIntervals, minutesBetween, getDayStartUTC, daysInMonthUTC, monthStartUTC, addMonthsUTC) that perform date and interval operations. These functions are completely isolated from the DOM and business logic, making them directly reusable in any JavaScript project requiring time-range calculations.
Implements a GLiNER2-based component extraction fallback with a content-addressed fingerprint cache. The cache key includes a hash of the input text, model identifier, and threshold; if the model fails to load (e.g., onnxruntime incompatibility), stale cache entries are reused so the daily run does not abort. This pattern is a robust way to handle unreliable ML model availability in a data pipeline.