feat(web): add Browse releases link next to invite download (#2255)

Related to https://github.com/block/buzz/issues/2093

Invite pages offered a platform-resolved binary download with no path to
the GitHub releases listing for users who wanted information first.

### Changes
- Keep the smart **Download it now** CTA
- Add an always-visible **Browse releases** link pointing at
`https://github.com/block/buzz/releases`
- Extend invite smoke coverage for the new link

Note: the marketing-site “Get the App” button on buzz.xyz appears to
live outside this repository; this improves the in-repo web invite flow.

Signed-off-by: Ian Alloway <ianalloway@usf.edu>
Signed-off-by: Fizz <300bd4cedcdddb62f77935de51c301034bdb4cd97da9aaca46d59673a1ebc7cf@buzz.block.builderlab.xyz>
This commit is contained in:
Ian Alloway
2026-09-29 13:27:08 -04:00
committed by GitHub
parent 12423f2868
commit b9d22a273f
2 changed files with 18 additions and 0 deletions

View File

@@ -288,6 +288,17 @@ export function InvitePage({ code }: { code: string }) {
> >
Download it now Download it now
</a> </a>
<span aria-hidden="true" className="mx-1.5 text-black/30">
·
</span>
<a
className="font-medium text-black underline-offset-4 hover:text-black/70 hover:underline focus-visible:underline"
href={BUZZ_RELEASES_URL}
rel="noreferrer"
target="_blank"
>
Browse releases
</a>
</p> </p>
</div> </div>

View File

@@ -79,6 +79,9 @@ test("invite requires age and legal consent before opening Buzz", async ({
"href", "href",
"https://github.com/block/buzz/releases/download/v0.4.9/Buzz_0.4.9_x64-setup_alpha-unsigned.exe", "https://github.com/block/buzz/releases/download/v0.4.9/Buzz_0.4.9_x64-setup_alpha-unsigned.exe",
); );
await expect(
page.getByRole("link", { name: "Browse releases" }),
).toHaveAttribute("href", "https://github.com/block/buzz/releases");
const ageConfirmation = page.getByLabel("I am 18 years of age or older."); const ageConfirmation = page.getByLabel("I am 18 years of age or older.");
const agreementConfirmation = page.getByLabel( const agreementConfirmation = page.getByLabel(
@@ -366,6 +369,10 @@ test("invite download links to the appropriate platform destination", async ({
page.getByRole("link", { name: "Download it now" }), page.getByRole("link", { name: "Download it now" }),
device.name, device.name,
).toHaveAttribute("href", device.expectedUrl); ).toHaveAttribute("href", device.expectedUrl);
await expect(
page.getByRole("link", { name: "Browse releases" }),
device.name,
).toHaveAttribute("href", "https://github.com/block/buzz/releases");
await context.route(device.expectedUrl, (route) => await context.route(device.expectedUrl, (route) =>
route.fulfill({ contentType: "text/html", body: "Store destination" }), route.fulfill({ contentType: "text/html", body: "Store destination" }),
); );