Skip to content

Marketing audit: hero rewrite, outcome-driven feature messaging, and guides/landing integration#1924

Merged
andrew-bierman merged 5 commits into
mainfrom
copilot/update-website-messaging-structure
Mar 10, 2026
Merged

Marketing audit: hero rewrite, outcome-driven feature messaging, and guides/landing integration#1924
andrew-bierman merged 5 commits into
mainfrom
copilot/update-website-messaging-structure

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 10, 2026

  • Hero section rewrite: "Stop overpacking. Start adventuring.", AI-focused subtitle, "Download Free" CTA, "See How It Works" secondary CTA
  • Add social proof bar to hero: "Trusted by 10,000+ outdoor enthusiasts · 4.8★ rating · Works offline"
  • Update hero stats: "100% Free Forever", updated rating display
  • Hero badge: "100% Free · AI-Powered Packing Lists"
  • Feature messaging (outcomes over features): all 7 features updated
  • Integrations section retitled: "Connects With the Tools You Already Use"
  • Make "Free" unmissable: FAQ, download section, download subtitle ("Download PackRat free today...")
  • Testimonials: thru-hiker use case, specific use cases per reviewer
  • About page: "Where It Started" founder story, free-app mission, "Download Free" CTA
  • Consistent American English spelling throughout
  • Guides site: "Download Free" CTA in header (desktop)
  • Guides site: "Download Free App" button in homepage hero
  • Guides site: Download CTA section on every guide page (American English: "personalized")
  • Guides footer: all company links point to packratai.com
  • Guides navigation: "← packratai.com" link added
  • Fix Terms of Service link (was #, now https://packratai.com/terms-of-service)
  • Resolve merge conflict with main: incorporate App Store link fix (/ru//us/) and expo CategoriesFilter/CatalogItemsScreen changes
Original prompt

This section details on the original issue you should resolve

<issue_title>[Marketing Audit] Website improvements — messaging, structure, and conversion optimization</issue_title>
<issue_description>## Context

As part of a full marketing audit (March 2026), several website-specific improvements were identified for packratai.com and guides.packratai.com. These changes aim to improve messaging clarity, user acquisition, SEO, and brand consistency.

Note: PackRat is currently a free app focused on user acquisition. There is no paid tier — all recommendations are oriented toward growing the free user base.


1. Hero Section Rewrite (packratai.com)

Current: "Pack smarter. Adventure further." — generic, could be any outdoor app.

Proposed:

  • Headline: "Stop overpacking. Start adventuring."
  • Subheadline: "PackRat's AI builds your perfect packing list based on your trip, the weather, and your gear — so you carry exactly what you need and nothing you don't."
  • CTA: "Download Free" | "See How It Works"
  • Social proof bar: "Trusted by 10,000+ outdoor enthusiasts · 4.8★ rating · Works offline"

2. Add About / Founder Story Page

The outdoor community values authenticity. There's currently no "About" page, team info, or origin story.

  • Create About page with founder background
  • Include mission statement and why PackRat was built
  • Add team photos or contributor acknowledgments

3. Add User Testimonials

No social proof beyond stats. Pull from app store reviews.

  • Add testimonial section to homepage (3-5 reviews)
  • Include specific use cases (weekend camper, thru-hiker, family trips)
  • Consider adding a "Community Packs" showcase section

4. Integrate Guides Site

The guides site (guides.packratai.com) feels disconnected from the main site. Visitors on packratai.com may never discover it, and visitors on guides never get a clear path to download the app.

  • Integrate guides site into main site navigation
  • Add download CTAs with "Free" messaging on every guide page
  • Add blog section for SEO content
  • Cross-link between guides and relevant app features

5. Feature Messaging (Outcomes over Features)

Current feature sections list what PackRat does but not why users should care.

Current Proposed
"Smart Packing Lists" "Never forget essential gear — or carry stuff you don't need"
"Trail Maps & Navigation" "Find your trail and navigate it offline"
"Weather Integration" "Pack for the weather you'll actually get"
"Integrations" "Connects with the tools you already use"

6. App Store Listing Optimization

  • Rewrite descriptions with target SEO keywords: "hiking packing list," "backpacking gear tracker," "outdoor trip planner"
  • Update screenshot captions with feature benefits
  • Ensure first 80 characters of description hook the reader

7. SEO Quick Wins

  • Add email newsletter signup to packratai.com
  • Cross-link guides site prominently from main site navigation
  • Add structured data / schema markup for app listing
  • Create 2-4 destination-specific packing guides for high-volume keywords

8. Make "Free" Unmissable

Users can't tell whether the app is free or paid — this creates download hesitation. Since PackRat is 100% free, make that a headline.

  • Add "100% Free" or "Free — No Ads, No Tracking" badge to hero section
  • Change primary CTA from "Download Now" to "Download Free"
  • Ensure App Store listings lead with "Free" in the first line
  • Consider "Free forever" or "Free while in alpha" messaging depending on future plans

Generated from PackRat Marketing Audit — March 2026</issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Summary by CodeRabbit

Release Notes

  • New Features

    • Added "Download Free App" call-to-action buttons across guides pages and main navigation.
    • Introduced social proof messaging on the landing page hero section.
  • Updates

    • Refreshed messaging to emphasize free, AI-powered packing lists and offline capabilities.
    • Updated navigation and footer links to direct users to packratai.com.
    • Expanded About page with origin story and clarified mission focus on accessibility and free service.
    • Adjusted CTA button text and feature descriptions for consistent "free" positioning.

…messaging, guides integration

Co-authored-by: andrew-bierman <94939237+andrew-bierman@users.noreply.github.com>
@cloudflare-workers-and-pages
Copy link
Copy Markdown
Contributor

cloudflare-workers-and-pages Bot commented Mar 10, 2026

Deploying packrat-landing with  Cloudflare Pages  Cloudflare Pages

Latest commit: 6cb8712
Status: ✅  Deploy successful!
Preview URL: https://9815b182.packrat-landing.pages.dev
Branch Preview URL: https://copilot-update-website-messa.packrat-landing.pages.dev

View logs

@cloudflare-workers-and-pages
Copy link
Copy Markdown
Contributor

cloudflare-workers-and-pages Bot commented Mar 10, 2026

Deploying packrat-guides with  Cloudflare Pages  Cloudflare Pages

Latest commit: 2b49853
Status: ✅  Deploy successful!
Preview URL: https://b1183139.packrat-guides-6gq.pages.dev
Branch Preview URL: https://copilot-update-website-messa.packrat-guides-6gq.pages.dev

View logs

Co-authored-by: andrew-bierman <94939237+andrew-bierman@users.noreply.github.com>
Copilot AI changed the title [WIP] Update website messaging and structure for conversion optimization Marketing audit: hero rewrite, outcome-driven feature messaging, and guides/landing integration Mar 10, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates the marketing copy and CTAs across the Landing and Guides sites to emphasize that PackRat is free, add stronger social proof, and drive more users to the app download section.

Changes:

  • Refreshed Landing site hero/feature/testimonial/FAQ copy and added a hero “social proof” line.
  • Added “Download Free” CTAs throughout the Guides site (header, home hero, and guide detail pages).
  • Updated Guides footer company links to point to real packratai.com destinations (about/download/privacy/contact).

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
apps/landing/config/site.ts Repositions Landing messaging around “free forever”, adds hero.socialProof, updates CTAs and supporting section copy.
apps/landing/components/sections/landing-hero.tsx Renders the new optional socialProof line under the main CTAs.
apps/landing/app/about/page.tsx Rewrites About page to include origin story + “free” messaging and updates CTA text.
apps/guides/lib/config.ts Adds a back-link to packratai.com in nav and replaces footer placeholders with real external links.
apps/guides/components/header.tsx Adds a desktop “Download Free” CTA link to packratai.com.
apps/guides/app/page.tsx Adds a secondary hero CTA to download the free app.
apps/guides/app/guide/[slug]/page.tsx Adds an in-article download CTA block under guide content.

You can also share your feedback on Copilot code review. Take the survey.

Comment thread apps/guides/lib/config.ts Outdated
{ title: 'Download App', href: 'https://packratai.com/#download' },
{ title: 'Contact', href: 'mailto:hello@packratai.com' },
{ title: 'Privacy Policy', href: 'https://packratai.com/privacy-policy' },
{ title: 'Terms of Service', href: '#' },
Copy link

Copilot AI Mar 10, 2026

Choose a reason for hiding this comment

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

Terms of Service still points to '#', which will render as a broken/no-op link now that the other Company links have been wired up. Consider either linking to the real terms page on packratai.com (or the guides-domain equivalent) or removing this item until the URL exists.

Suggested change
{ title: 'Terms of Service', href: '#' },
{ title: 'Terms of Service', href: 'https://packratai.com/terms-of-service' },

Copilot uses AI. Check for mistakes.
@andrew-bierman andrew-bierman marked this pull request as ready for review March 10, 2026 16:56
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 10, 2026

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 44608a36-d6c3-4ed9-8d0c-d382994de447

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This PR implements marketing audit improvements across the landing and guides sites, adding rewritten hero messaging emphasizing the free, AI-powered app, new download CTAs on multiple pages, an about page with origin story, updated feature descriptions, and enhanced social proof throughout.

Changes

Cohort / File(s) Summary
Guides Site Navigation & CTAs
apps/guides/app/page.tsx, apps/guides/app/guide/[slug]/page.tsx, apps/guides/components/header.tsx, apps/guides/lib/config.ts
Added "Download Free App" CTAs across guides pages (hero, individual guides, header), added new navigation link to packratai.com homepage, updated footer Company section with external links (About, Download, Contact, Privacy Policy).
Landing Site Hero & Config
apps/landing/components/sections/landing-hero.tsx, apps/landing/config/site.ts
Updated hero headline to "Stop overpacking. Start adventuring.", changed primary CTA from "Download Now" to "Download Free", added "See How It Works" secondary CTA, added conditional social proof line (4.8★ rating, free status), updated feature descriptions to emphasize AI-tailored lists and offline capabilities, refreshed testimonials and FAQ.
Landing Site About Page
apps/landing/app/about/page.tsx
Added origin story section ("Where It Started") with narrative of why PackRat was built, introduced new "Our Mission" section emphasizing accessibility and free app, updated hero text to highlight "completely free", changed CTA button text to "Download Free".

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 The guides now gleam with download delight,
Free buttons shine, a conversion's bright light,
Hero copy sings "stop overpacking" true,
About page reveals the founder's view,
From "Download Now" to "Download Free"—
The message is clear for all to see! 🎒✨

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: marketing audit implementation including hero rewrite, outcome-driven feature messaging, and guides/landing site integration.
Linked Issues check ✅ Passed The PR implements most core objectives from issue #1923: hero rewrite with new headline/subheadline/CTAs, free messaging emphasis, feature messaging overhaul, about page origin story, and guides site integration with download CTAs. However, testimonials, community packs showcase, and app store optimization are not included in this PR.
Out of Scope Changes check ✅ Passed All changes are scope-appropriate marketing content updates (copy, configuration, UI components) directly aligned with the marketing audit recommendations. No unrelated functional logic, refactoring, or out-of-scope technical changes are present.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch copilot/update-website-messaging-structure

Comment @coderabbitai help to get the list of available commands and usage tips.

@andrew-bierman
Copy link
Copy Markdown
Collaborator

@copilot resolve merge conflicts, see code rabbit comments also

@andrew-bierman
Copy link
Copy Markdown
Collaborator

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 10, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (2)
apps/guides/components/header.tsx (1)

105-110: Use the shared Button primitive for this CTA.

This is a button-styled link, so it should follow the repo pattern with <Button asChild> instead of styling Link directly.

♻️ Suggested change
+import { Button } from 'guides-app/components/ui/button';
-          <Link
-            href="https://packratai.com/#download"
-            className="hidden md:inline-flex items-center gap-1.5 ml-2 px-4 py-1.5 rounded-full bg-apple-blue text-white text-sm font-medium hover:bg-apple-blue/90 transition-colors"
-          >
-            Download Free
-          </Link>
+          <Button
+            asChild
+            className="hidden md:inline-flex ml-2 rounded-full bg-apple-blue px-4 py-1.5 text-sm font-medium text-white hover:bg-apple-blue/90"
+          >
+            <Link href="https://packratai.com/#download">Download Free</Link>
+          </Button>

As per coding guidelines: apps/{landing,guides}/**/*.ts{,x}: Use <Button asChild> with a <Link> child for button-styled links, not wrapping <Button> inside <Link>.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/guides/components/header.tsx` around lines 105 - 110, The CTA is a
button-styled link but currently styles the Link directly; replace it with the
shared Button primitive used as a wrapper for the Link: render <Button asChild>
with the existing <Link href="https://packratai.com/#download"> as its child
(preserve href and accessible text "Download Free"), move the button
classes/variants to the Button props instead of on Link, and remove the direct
styling from the Link so the Button controls appearance and hover behavior;
update the instance in the Header component where Link is used for this CTA.
apps/guides/lib/config.ts (1)

36-39: Centralize the PackRat marketing URLs.

These destinations are now duplicated here, apps/guides/components/header.tsx (Line 106), apps/guides/app/page.tsx (Line 69), and apps/guides/app/guide/[slug]/page.tsx (Lines 126 and 129). Pulling them into shared config/constants here would make future domain or anchor changes much less error-prone.

Also applies to: 88-91

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/guides/lib/config.ts` around lines 36 - 39, Extract the PackRat
marketing link into a shared constant (e.g., PACKRAT_LINK or PACKRAT_MARKETING
with properties title and href) in apps/guides/lib/config.ts instead of
repeating the inline object { title: '← packratai.com', href:
'https://packratai.com' } (and the duplicate at lines 88-91); export that
constant and update consumers (apps/guides/components/header.tsx,
apps/guides/app/page.tsx, apps/guides/app/guide/[slug]/page.tsx) to import and
use the shared PACKRAT_LINK constant so future domain or anchor changes are made
in one place.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@apps/guides/app/guide/`[slug]/page.tsx:
- Around line 117-120: Change the British spelling "personalised" to American
English "personalized" in the CTA paragraph text (the JSX <p> that currently
reads "PackRat builds your personalised packing list...") so the marketing copy
matches the rest of the PR.

In `@apps/landing/app/about/page.tsx`:
- Around line 50-59: Update the two paragraph JSX nodes using className
"text-muted-foreground leading-relaxed" to American spelling: change "realising"
to "realizing" and "personalised" to "personalized" in the <p
className="text-muted-foreground leading-relaxed"> elements within the about
page component so the copy matches the rest of the PR's American English.

---

Nitpick comments:
In `@apps/guides/components/header.tsx`:
- Around line 105-110: The CTA is a button-styled link but currently styles the
Link directly; replace it with the shared Button primitive used as a wrapper for
the Link: render <Button asChild> with the existing <Link
href="https://packratai.com/#download"> as its child (preserve href and
accessible text "Download Free"), move the button classes/variants to the Button
props instead of on Link, and remove the direct styling from the Link so the
Button controls appearance and hover behavior; update the instance in the Header
component where Link is used for this CTA.

In `@apps/guides/lib/config.ts`:
- Around line 36-39: Extract the PackRat marketing link into a shared constant
(e.g., PACKRAT_LINK or PACKRAT_MARKETING with properties title and href) in
apps/guides/lib/config.ts instead of repeating the inline object { title: '←
packratai.com', href: 'https://packratai.com' } (and the duplicate at lines
88-91); export that constant and update consumers
(apps/guides/components/header.tsx, apps/guides/app/page.tsx,
apps/guides/app/guide/[slug]/page.tsx) to import and use the shared PACKRAT_LINK
constant so future domain or anchor changes are made in one place.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7de2a29e-2890-4840-8f6f-2b86e9bb9ad3

📥 Commits

Reviewing files that changed from the base of the PR and between f528513 and a609377.

📒 Files selected for processing (7)
  • apps/guides/app/guide/[slug]/page.tsx
  • apps/guides/app/page.tsx
  • apps/guides/components/header.tsx
  • apps/guides/lib/config.ts
  • apps/landing/app/about/page.tsx
  • apps/landing/components/sections/landing-hero.tsx
  • apps/landing/config/site.ts

Comment on lines +117 to +120
<p className="text-muted-foreground mb-6 max-w-md mx-auto">
PackRat builds your personalised packing list based on your trip, the weather, and
your gear — completely free.
</p>
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Keep this CTA copy in American English.

Line 118 uses personalised, which reintroduces British spelling into the marketing copy. personalized would match the rest of this PR.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/guides/app/guide/`[slug]/page.tsx around lines 117 - 120, Change the
British spelling "personalised" to American English "personalized" in the CTA
paragraph text (the JSX <p> that currently reads "PackRat builds your
personalised packing list...") so the marketing copy matches the rest of the PR.

Comment on lines +50 to +59
<p className="text-muted-foreground leading-relaxed">
PackRat was born out of a familiar frustration: standing at the trailhead realising
you&apos;ve forgotten your rain jacket, your headlamp, or (worse) your water filter.
After one too many trips cut short or made miserable by missing gear, our founder set
out to build the app they always wished existed.
</p>
<p className="text-muted-foreground leading-relaxed">
The vision was simple — an intelligent packing assistant that knows your trip, the
forecast, and your gear, and builds a personalised list so you carry exactly what you
need and nothing you don&apos;t. No more overpacking. No more forgetting essentials.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Keep the origin-story copy in American English.

Lines 51 and 58 use realising and personalised, which clashes with the rest of this PR’s American English marketing copy.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/landing/app/about/page.tsx` around lines 50 - 59, Update the two
paragraph JSX nodes using className "text-muted-foreground leading-relaxed" to
American spelling: change "realising" to "realizing" and "personalised" to
"personalized" in the <p className="text-muted-foreground leading-relaxed">
elements within the about page component so the copy matches the rest of the
PR's American English.

…lling in guide CTA

Co-authored-by: andrew-bierman <94939237+andrew-bierman@users.noreply.github.com>
Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 10, 2026

@copilot resolve merge conflicts, see code rabbit comments also

Done in commit 2b49853. Resolved the merge conflict with main (incorporated the App Store region fix /ru//us/ and the expo catalog changes). Also fixed the Terms of Service footer link in the guides site to point to https://packratai.com/terms-of-service (per the code review suggestion), and fixed a British spelling ("personalised" → "personalized") in the guide CTA copy.

@andrew-bierman andrew-bierman merged commit a0ba958 into main Mar 10, 2026
7 checks passed
@andrew-bierman andrew-bierman deleted the copilot/update-website-messaging-structure branch March 10, 2026 18:18
andrew-bierman added a commit that referenced this pull request May 14, 2026
…ging-structure

Marketing audit: hero rewrite, outcome-driven feature messaging, and guides/landing integration
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.

[Marketing Audit] Website improvements — messaging, structure, and conversion optimization

3 participants