Skip to content

docs: show the dashboard in the readme - #92

Merged
askides merged 1 commit into
mainfrom
docs/dashboard-screenshot
Aug 5, 2026
Merged

docs: show the dashboard in the readme#92
askides merged 1 commit into
mainfrom
docs/dashboard-screenshot

Conversation

@askides

@askides askides commented Aug 5, 2026

Copy link
Copy Markdown
Owner

The readme described the dashboard without showing it, which for a self-hosted
analytics tool is most of what someone wants to see before deciding to run it.

Captured from the public dashboard route (/websites/:id/s/analytics) against
the seeded 60-day dataset — headline figures, the range and timezone pickers,
the daily pageviews chart over 30 days, and the first rows of the pages and
channels panels.

On the aspect ratio

The first attempt came out a 2:1 letterbox. A window resize can't exceed the
display height, and a browser extension banner eats more of it, so the capture
was far wider than tall.

Fixed by overriding the page viewport through CDP rather than resizing the
window: 1280×862 at 2× device pixel ratio. That gives a 3:2 image, sharp on
retina, that reaches far enough down to include the panels under the chart —
so the bottom edge reads as "there's more below" rather than as a truncated
header row.

Notes

  • Stored under .github/assets/: .dockerignore already excludes .github,
    so the image cannot find its way into the Docker build context.
  • Referenced by relative path, so it renders in this pull request as well
    as on the merged default branch. The logo above it uses an absolute
    raw.githubusercontent.com URL, which only resolves post-merge.
  • 294 KB PNG, 2560×1724.

One thing worth knowing

An early capture showed the chart flat at zero from mid-July onward, which
looked like an aggregation bug — the database has 16–56 events on every day
of the range. It was the Recharts draw animation: the screenshot landed
mid-render. Waiting it out produced the correct curve, matching the daily
counts and the stated peak of 50. No bug, but the half-drawn state is
convincing enough to be worth recording.

A self-hosted analytics tool is a thing people look at, and the readme
described it without showing it. Captured from the public dashboard route
against the seeded 60-day dataset: the headline figures, the range and
timezone pickers, the daily pageviews chart, and the first rows of the pages
and channels panels.

Taken through CDP with an overridden viewport rather than a window resize.
The window cannot exceed the display height — and a browser extension banner
eats more of it — which had forced a 2:1 letterbox. Overriding the page
viewport instead gives 1280x862 at 2x, so the image is a 3:2 that includes
the panels below the chart and stays sharp on a retina display.

Stored under .github/assets rather than at the root or in a docs directory
because .dockerignore already excludes .github, so the image cannot end up in
the build context. Referenced by relative path so it renders on the pull
request as well as on the merged default branch.
@askides
askides force-pushed the docs/dashboard-screenshot branch from 8745ae0 to 27c410e Compare August 5, 2026 09:24
@askides
askides merged commit 9190ed8 into main Aug 5, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant