Hub pages 3/4: {get-started} - #3827
Draft
florent-leborgne wants to merge 1 commit into
Draft
Conversation
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 07:56
ed21c2f to
8cc8882
Compare
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 08:50
8cc8882 to
62b273f
Compare
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 13:32
62b273f to
2e0a6f7
Compare
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 15:16
2e0a6f7 to
efa41f6
Compare
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 15:50
efa41f6 to
d29c99e
Compare
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 16:11
d29c99e to
f02a11e
Compare
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 16:19
f02a11e to
13a991f
Compare
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 16:54
13a991f to
c7807d9
Compare
The onboarding section of a hub page. It gives a new reader one opinionated path to a first success, before they face the full link list. The section is optional. Keeps the top-level install and tutorial pair as first-class fields rather than treating it as prototype back-compatibility. The designs use exactly that shape: a copyable command beside a tutorial card, with numbered steps below. The install snippet renders inside `.highlight pre` with a language class, which is what the site's copy button and syntax highlighter already select on. Both work with no extra wiring, because the hub layout kept the markdown-content id. Steps take one of three shapes: plain, a whole-card link, or two or more equally weighted options side by side. Numbering is automatic and sits before the title, because the section describes a sequence and the number is what carries that. Drops the prototype's per-step icon field. The icons restate the step title, the number badge is already the visual anchor, and a schema field for decoration makes every author pick icons that then drift between hubs. The LLM export renders the steps as an ordered list with options as sub-items. The search body gets nothing, for the same reason as the other hub directives. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
florent-leborgne
force-pushed
the
feature/hub-get-started
branch
from
August 11, 2026 17:16
c7807d9 to
a84e1b4
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.
Part 3 of 4, based on #3826. Implements elastic/docs-content-internal#1382.
Demo: Demo: https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/3827/examples/products/docs-builder
The onboarding section of a hub page. It gives a new reader one opinionated path to a first success, before they face the full link list. The section is optional.
Structure
Three steps, following the prototype. The first offers two equally weighted ways to start, and the rest are single steps.
title,options[]title,description,link,link-labeltitle,descriptionNothing renders between the intro and the numbered list. An install command belongs in
steps[0].options[], which keeps the whole path inside the numbered sequence. The prototype'sinstallandtutorialfields are removed: they placed content above the steps, which the structure does not call for.Implementation choices
A step option's command uses the standard code block. It renders inside
.highlight prewith a language class, which is what the site's copy button and syntax highlighter select on. Both attach with no extra wiring, because the hub layout kept themarkdown-contentid in #3825. That gives the Copy affordance the designs show.Step numbering sits before the title. The section describes a sequence, and the number is what carries that. The designs put it in the card corner, which turns it into a decorative counter the reader meets after the title.
No per-step icon. The prototype has
steps[].icon, resolved throughEuiSvgIcons. It is removed. In the designs the icons restate the step title, the number badge is already the card's visual anchor, and a schema field that exists for decoration means every author picks icons that then drift between hubs.Machine-readable output. The LLM export renders steps as an ordered list, with options as sub-items carrying their command or link. The search body gets nothing, as with the other hub directives.
Example page
The example hub's section uses every field once and shows all three step shapes, so it can be copied and trimmed rather than extended.
Testing
./build.sh unit-testpasses.dotnet formatandnpm run fmt:checkare clean. A full docs build reports 0 errors and 0 warnings.tests/authoring/Blocks/Hub/GetStarted.fscovers all three step shapes, a step option's command landing in a highlightable code block, automatic numbering, that nothing renders above the steps, and two failure paths.Screenshots to add or update
None attached. The side-by-side option layout in step one is worth checking on the preview.