A comprehensive, interactive dashboard for visualizing GitHub activity metrics across organizations and repositories. Built as a single-page application that queries the ClickHouse public dataset of GitHub events.
π Live Demo: Open the dashboard
Track various types of GitHub activity:
- All Activity - Combined view of all contribution types
- Comments - Issue and PR comments
- Created Issues - New issues opened
- Closed Issues - Issues resolved
- Opened PRs - Pull requests submitted
- Reviewed PRs - Pull requests reviewed and approved
- Query multiple organizations or repositories simultaneously
- Comma-separated input (e.g.,
ClickHouse, apache, google) - Full repository names supported (e.g.,
apache/spark, google/guava) - Combines results with OR logic
- Last 3 months
- Last 6 months
- Last year
- All time
- Auto - Automatically selects appropriate grouping based on time range
- 3 months: daily aggregation
- 6-12 months: weekly aggregation
- All time: monthly aggregation
- Quarter - Quarterly aggregation
- Month - Monthly aggregation
- Week - Weekly aggregation
- Day - Daily aggregation
Compare two organizations or repositories side-by-side:
- Unified time ranges for accurate comparison
- Aligned bar widths for visual comparability
- Color-coded statistics (green for higher, red for lower)
- Independent filtering for each side
Beautiful, space-efficient horizon charts powered by D3.js:
- OKLCH color space for perceptually uniform colors
- Repository-based color coding using cityHash64
- 4-band visualization for activity intensity
- Smooth, responsive rendering
- Login names - Click to view detailed activity in ClickHouse Playground
- Data points - Click chart segments to see activity for that specific time period
- GitHub profiles - Hover over logins to reveal GitHub profile links
- Tooltips - Show exact date and value for each data point
- Border highlighting - Visual indication of hovered chart segment
- GitHub logo - Appears on login hover for quick profile access
- Core team only toggle - Filter to show only core team members (ClickHouse-specific)
- With Alexey sub-toggle - Include/exclude alexey-milovidov
- Delete logins - Hide specific users with red Γ button (shown on hover)
- Deleted logins tracked in URL - State persists across sessions
Each organization displays:
- Unique items - Total unique issues/PRs (uniq(number))
- Unique authors - Total unique contributors (uniq(actor_login))
- Total events - Count of all events (count())
Statistics respect all filters (time range, metric, deleted logins, core team mode).
Complete URL hash-based state persistence:
- Organizations/repositories
- Current metric
- Time range
- Grouping mode
- Toggle states (Core team only, With Alexey)
- Comparison mode and comparison org
- Deleted logins list
Share links with exact dashboard state preserved!
- Queries the public ClickHouse GitHub events dataset
- Optimized queries with pre-filtering to top 1000 contributors
- Bot account filtering built-in
- Efficient time-based aggregation
- Parallel query execution in comparison mode
- Open
index.htmlin a web browser - Enter organization(s) or repository(s) in the input field
- Select your desired metric, time range, and grouping
- View the interactive charts
- Toggle "Compare" switch
- Enter second organization/repository in the "with:" field
- View side-by-side comparison with unified scales
- Click login names to see detailed activity in ClickHouse Playground
- Click chart segments to see activity for specific time periods
- Hover over logins to reveal GitHub profile links
- Hover over charts to see exact values
Simply copy the URL - all dashboard state is encoded in the hash fragment and can be shared with others.
- Frontend: Pure HTML, CSS, JavaScript (ES6+)
- Visualization: D3.js v7
- Data Source: ClickHouse public GitHub events dataset
- API: ClickHouse Playground REST API
Charts use the OKLCH color space for perceptually uniform colors:
- Hue determined by
cityHash64(anyHeavy(repo_name)) - 4 bands with varying lightness (0.85, 0.75, 0.65, 0.55)
- Chroma increases with intensity (0.08, 0.10, 0.12, 0.14)
- Queries GitHub events from ClickHouse public dataset
- Filters to top 1000 contributors by activity
- Excludes bot accounts via regex pattern
- Aggregates by actor and time period
- Processes into horizon chart format
- Uses
anyHeavy(repo_name)for representative repository per time period - Pre-filters to top contributors to limit dataset size
- Leverages ClickHouse's efficient time functions (
toStartOfDay, etc.) - Parallel fetching for comparison mode
The dashboard includes a predefined list of ClickHouse core team members for filtering:
- Alexey Milovidov (alexey-milovidov)
- Nikolay Degterinsky (evillique)
- Konstantin Bogdanov (thevar1able)
- ... and more
Creative Commons Attribution-NonCommercial-ShareAlike 4.0
Contributions are welcome! The entire application is contained in a single index.html file for easy deployment and modification.

