Remote Taskfiles are the one thing Make, just and npm scripts cannot do,
and the homepage did not mention them anywhere. The wording stays on
including a Taskfile rather than running one, so it does not read as an
invitation to execute an arbitrary URL.
As a third pill next to the two calls to action it read as a truncated
button: same shape and weight as the CTAs for something that is a
statistic, not an action, and a bare star glyph that says nothing about
GitHub.
Render it below the buttons instead, as a muted line with the GitHub mark
the navbar already uses. The hero buttons go back to the front matter and
custom.css drops the VPHero rules it had to mirror.
The first sign of traction on the homepage was the adopters carousel, two
sections down. Add a third hero button next to the two calls to action.
VitePress renders home-hero-actions-after outside its own .actions row, so
the hero buttons move from the front matter into HeroActions.vue, which is
the only way to line the count up with them. That row's layout rules are
scoped to VPHero, so custom.css mirrors them.
Read stargazers_count once per build and expose it both raw and rounded.
Deploy previews build from shared, unauthenticated IPs, so GitHub's rate
limit is a routine answer rather than an incident: any failure falls back
to a constant instead of breaking the build.
The homepage used 800px and 560px while the theme and custom.css work off
640/768/960. Move to 959px and 639px, which also stacks the two code
panels before they get too narrow to read.
The 2s reset timer outlived the component on SPA navigation, and a
clipboard call rejected by the browser left the user with nothing to act
on. Clear the timer on unmount and select the command text on failure so
a manual copy is one keystroke away.
Every other homepage link is tracked declaratively; the copy button
called window.umami directly, and only on success, so failed copies never
showed up in the stats.
The two code panels and the three journey cards were lined up with
min-height: 420px and min-height: 5.1rem, which break as soon as a
paragraph gains a line. Let the grid stretch the panels and push each
card's link list down with margin-top: auto instead.
The Taskfile and terminal panels were hand-marked HTML with their own
.syntax-* classes, so the sample missed the site's code theme and could
drift from what Task actually prints. Move both to files under
.vitepress/snippets and highlight the YAML at build time through a
VitePress data loader, using the same Shiki themes as fenced code blocks.
The terminal transcript is now the verbatim output of running the sample
Taskfile: the previous one had the wrong column padding for `task --list`.