Skip to content

Refresh About page copy and add tour / where-to-buy CTAs - #133

Merged
spizeck merged 2 commits into
mainfrom
feat/issue-131-about-page-ctas
Sep 24, 2026
Merged

spizeck merged 2 commits into
mainfrom
feat/issue-131-about-page-ctas

Conversation

@spizeck

@spizeck spizeck commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner

Summary

Rewrites the /about body copy in the updated customer-facing voice and adds two CTA pairs so visitors can act on the page: Book a Brewery Tour (opens the existing product-agnostic TourInquiryCta dialog with the Brewery Tour / Tour + Tasting choice) and Find Deep Dive Near You / Find Where to Buy (internal Link to /where-to-buy).

Closes #131

Changes

  • app/(pages)/about/page.mdx — new body copy per issue; ## The Island → ## Brewing on Saba; CTA groups after the intro and at the end. Metadata unchanged (still accurate).
  • app/globals.css — .prose-dd a → .prose-dd a:not([class]). These rules are unlayered, so they were overriding the button utility classes on the Link CTAs (blue underlined text inside a button). Classless markdown anchors keep identical styling.
  • smoke-tests/smoke.spec.ts — new test: refreshed copy present, Brewing on Saba heading, old The Island/IGY Marina copy gone, no em dashes in the article, both CTA pairs render with /where-to-buy hrefs, no wa.me bypass, and no <p> inside the tour buttons (regression guard — MDX paragraph-wraps multiline JSX children, which hid the label via the prose color rule).
  • smoke-tests/tour-inquiry.spec.ts — new tests: both about-page CTAs open the product-agnostic dialog (2 radios, no event on open, Escape returns focus) and the handoff attributes cta_location: "about_page" with the correct WhatsApp message.
  • smoke-tests/analytics.spec.ts — new test: the About Where-to-Buy link fires where_to_buy_click once with cta_location: "about_page".

No content in TourInquiryCta, WhatsApp message generation, or analytics plumbing was touched — the About CTAs reuse the same architecture as the homepage hero.

Verification

  • npx tsc --noEmit — pass
  • npm run lint — pass
  • npm test — 355/355
  • npm run build — pass
  • npx playwright test — 77/77 (smoke, tour-inquiry, analytics, accessibility, seo)
  • npm run check:md-links — pass
  • npm audit --omit=dev — 0 vulnerabilities
  • Desktop 1440px: both CTA groups render correctly, no horizontal overflow; link buttons are not prose-styled
  • Mobile 375px: CTAs stack via flex-wrap, no overflow; keyboard Enter opens the dialog

Risk / deployment notes

None — content and presentation only. The .prose-dd selector change affects only anchors that carry a class attribute; markdown body links (none currently exist in MDX pages) are unaffected.

Generated with Devin

Summary by Sourcery

Refresh the About page content and provide visitors with accessible tour-booking and beer-finding actions.

New Features:

  • Add tour-booking and where-to-buy calls to action groups to the About page.
  • Connect About page CTAs to tour inquiry and where-to-buy flows with page-specific attribution.

Bug Fixes:

  • Prevent prose link styling from overriding button appearance in MDX content.

Enhancements:

  • Refresh the About page customer-facing copy and reorganize the Saba brewing story.

Tests:

  • Add smoke coverage for refreshed About page content, CTA rendering, tour inquiry behavior, and where-to-buy analytics attribution.

Replace the body copy with the updated customer-facing text (no em
dashes), rename "The Island" section to "Brewing on Saba", and add two
CTA pairs (intro + closing): a product-agnostic TourInquiryCta with
cta_location="about_page" and a Button-as-Link to /where-to-buy using
the existing where_to_buy_click analytics attributes.

Two MDX-specific adjustments keep the CTAs rendering correctly inside
prose-dd: CTA labels stay inline so MDX does not paragraph-wrap them
(a <p> inside the button inherited dark prose color on the dark
button), and the unlayered .prose-dd anchor rules are scoped to
classless links so they no longer override Button-as-Link styling.

Closes #131

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @spizeck, this account has used its review budget of 1,500,000 diff characters for the last 7 days.

You can request another review in 45 minutes by commenting @sourcery-ai review. Upgrade to get a review now.

@vercel

vercel Bot commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
deepdivebrewing-web Ready Ready Preview Sep 24, 2026 1:58pm UTC

Request Review

@sourcery-ai

sourcery-ai Bot commented Sep 24, 2026

Copy link
Copy Markdown

Reviewer's Guide

Refreshes the About page voice and structure, adds duplicated tour and where-to-buy CTA groups using existing conversion architecture, scopes prose link styling so component buttons render correctly, and introduces regression coverage for content, accessibility behavior, handoffs, and analytics.

Sequence diagram for About page tour inquiry CTA

sequenceDiagram
    actor Visitor
    participant AboutPage
    participant TourInquiryCta
    participant InquiryDialog
    participant WhatsApp

    Visitor->>AboutPage: Click Book a Brewery Tour
    AboutPage->>TourInquiryCta: Open CTA
    TourInquiryCta->>InquiryDialog: Show product-agnostic dialog
    InquiryDialog-->>Visitor: Display Brewery Tour and Tour + Tasting choices
    Visitor->>InquiryDialog: Select inquiry option
    InquiryDialog->>WhatsApp: Handoff with cta_location about_page
Loading

File-Level Changes

Change Details Files
Rewrote the About page content and added two conversion points that reuse the existing tour inquiry and where-to-buy flows.
  • Updated customer-facing copy, section naming, history, island logistics, and community messaging.
  • Added intro and closing CTA groups with two tour dialog triggers and internal where-to-buy links.
  • Preserved metadata and passed attribution through the existing CTA and analytics attributes.
app/(pages)/about/page.mdx
Prevented MDX component links from inheriting prose anchor styling while retaining styling for ordinary markdown links.
  • Scoped prose anchor rules to classless anchors.
  • Kept hover and link styling unchanged for markdown anchors.
app/globals.css
Added end-to-end coverage for refreshed content, CTA rendering, inquiry behavior, attribution, navigation, and analytics.
  • Asserted updated and removed copy, heading changes, CTA counts, destinations, no raw WhatsApp bypass, and no paragraph-wrapped button labels.
  • Verified both tour CTAs open the product-agnostic dialog, preserve focus on Escape, and produce the expected WhatsApp handoff and inquiry attribution.
  • Verified the where-to-buy CTA emits one correctly attributed analytics event.
smoke-tests/smoke.spec.ts
smoke-tests/tour-inquiry.spec.ts
smoke-tests/analytics.spec.ts

Possibly linked issues


Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@spizeck
spizeck merged commit 3bbe973 into main Sep 24, 2026
4 checks passed
@spizeck
spizeck deleted the feat/issue-131-about-page-ctas branch September 24, 2026 14:02

This branch was successfully deployed

1 active deployment
Preview — d077e9b9 Deployed Sep 24, 2026 by vercel[bot]
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.

Improve About page copy and add tour / where-to-buy CTAs

1 participant