docs: redesign homepage - #3010
Draft
vmaerten wants to merge 16 commits into
Draft
Conversation
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`.
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.
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 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.
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.
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 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.
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.
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.
vmaerten
force-pushed
the
docs/homepage-trust-strip
branch
from
August 30, 2026 19:19
3624714 to
3fee488
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.