Skip to content

Lead with winget, and thin the install panel - #270

Merged
fstubner merged 1 commit into
mainfrom
fix/install-section-and-hero
Aug 28, 2026
Merged

fstubner merged 1 commit into
mainfrom
fix/install-section-and-hero

Conversation

@fstubner

Copy link
Copy Markdown
Owner

Two of the open items: swap the winget and shell-script bars (using winget install netscli), and thin an install section that read as a wall.

The swap had already happened — but only in JavaScript

os-tabs.ts picks hero commands per OS, and Windows visitors already got winget install fstubner.netscli as the primary bar with the PowerShell script below it. The server-rendered default did not: it was curl … install.sh | bash as the most prominent command on the page, until a script ran.

So the bash pipeline was the loudest thing on the page for anyone without JavaScript, and for every crawler reading the HTML. The static markup now matches what Windows visitors were already being shown, and the runtime swap still adapts it for macOS and Linux.

winget install netscli — checked, not assumed

I looked at the live catalog rather than trusting the local templates:

manifests/f/fstubner/netscli/       Moniker: netscli
manifests/f/fstubner/netscli/gui/   Moniker: netscli-gui

Both short forms resolve. The canonical fstubner.netscli / fstubner.netscli.gui stay in the install guide for anyone who wants to be unambiguous.

Worth knowing, found while checking this. The published catalog holds 0.2.0, then v0.2.2, v0.2.3, v0.2.4, v0.2.5, v0.2.6 — the PackageVersion: v0.2.6 prefix bug that #264 fixed has already shipped five times. Only the hand-written 0.2.0 and the GUI's 0.2.6 are correct. #264 stops it recurring; it does not clean up what is already there, and the mixed set will affect winget upgrade ordering. That needs a decision, not a patch.

What made the panel dense

Two things, both measurable:

  • Cargo had a row on all three platforms — the identical cargo install netscli, three times. It is one clause in the note under the panel now, beside the verification and packet-capture links.
  • "Verifies the download against the hash in its manifest" appeared four times in a single Windows panel — winget and scoop, under both Desktop app and CLI. It is Hash-verified now. The full sentence lives in the install guide; on the row it only has to separate those from the direct download below them.

20 install rows → 17 · 6 Try it commands → 5 · 26 copy controls on the page.

The green download button

Accent text on an accent tint inside an accent border — the loudest control in the section, sitting on the row that is the least recommended route. A direct download is unsigned and unverified; the package-manager rows above it check a hash. The colour was pointing at the wrong option.

Neutral now, matching the command bars beside it, with the accent kept for hover and focus so it still reads as a control.

Verification

astro check 0 errors across 54 files · a11y 0 violations in both themes · CSS budget 42 · hero primary/secondary confirmed swapped in the built HTML.

The hero's prominent command was `curl … install.sh | bash` and the smaller
one below it was `winget install fstubner.netscli`. os-tabs.ts already
swapped those per-OS at runtime, so a Windows visitor with JavaScript got the
winget line -- but the server-rendered default did not, so the most prominent
command on the page was a bash pipeline until a script ran, and stayed one
for anyone without JavaScript and for every crawler reading the HTML. The
static markup now matches what Windows visitors were already getting.

`winget install netscli`, not `winget install fstubner.netscli`. Checked
against the live catalog rather than assumed: manifests/f/fstubner/netscli
publishes `Moniker: netscli`, and the desktop package publishes
`Moniker: netscli-gui`, so both short forms resolve. The canonical
identifiers stay in the install guide.

The panel was dense for two avoidable reasons. Cargo had a row on all three
platforms -- the same `cargo install netscli` three times -- and it is now
one clause in the note under the panel with the verification and
packet-capture links. And "Verifies the download against the hash in its
manifest" appeared four times in a single Windows panel, on winget and scoop
under both Desktop app and CLI. It is "Hash-verified" now; the sentence lives
in the install guide, and here it only has to separate those rows from the
direct download below them.

20 install rows to 17, six Try it commands to five, 26 copy controls on the
page.

The direct-download button was accent text on an accent tint inside an accent
border: the loudest control in the section, on the row that is the least
recommended route. A direct download is unsigned and unverified while the
package-manager rows above it check a hash, so the green was pointing at the
wrong option. Neutral now, with the accent kept for hover and focus.

astro check 0 errors, a11y 0 violations in both themes, CSS budget 42.
@github-actions

Copy link
Copy Markdown
Contributor

Site preview: https://pr-270.netscli-site-preview.pages.dev

Built from b2244fb with NETSCLI_PREVIEW=1 — noindex, and analytics disabled so it does not report into netscli.com's numbers.

Production is unaffected: netscli.com is served from GitHub Pages via pages.yml, which is manual-only.

@fstubner
fstubner merged commit ad23395 into main Aug 28, 2026
14 checks passed
@fstubner
fstubner deleted the fix/install-section-and-hero branch August 28, 2026 18:59
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