Skip to content

Show the Product Hunt badge on the landing page from launch day - #4

Merged
leoisadev1 merged 1 commit into
mainfrom
leoplayz317/cnv-12-show-the-product-hunt-badge-on-the-landing-page-from-launch
Oct 6, 2026
Merged

leoisadev1 merged 1 commit into
mainfrom
leoplayz317/cnv-12-show-the-product-hunt-badge-on-the-landing-page-from-launch

Conversation

@leoisadev1

@leoisadev1 leoisadev1 commented Oct 6, 2026 •

Copy link
Copy Markdown
Member

Summary

convt launches on Product Hunt on 7 October, and the landing page should link to the post from then on, not before. The hero now shows the Product Hunt featured badge from 3:00 am Eastern (07:00 UTC) on 7 October 2026.

The home page is prerendered static HTML, so the browser decides:

ProductHuntBadge (client only, under the hero's "Coming soon" pill)
├── now >= PRODUCT_HUNT_FROM  → render badge link (new tab)
├── now <  PRODUCT_HUNT_FROM  → render nothing, set a timer for the launch time
└── prerendered HTML          → never contains the badge

Evidence

Both columns are real bun run build:landing builds served locally. "After" is a throwaway build with PRODUCT_HUNT_FROM moved into the past; the committed date is unchanged.

Before launch time After launch time
Before launch, desktop After launch, desktop
Before launch, mobile After launch, mobile
  • Before 3 am ET: 0 Product Hunt elements in the HTML and after hydration, so no request to Product Hunt.
    After 3 am ET: 1 badge link, image loaded at 250px wide, at 1440px and 390px.
  • bun run check and bun run check-types pass.

Not tested: a page left open across 3 am picking up the badge through the timer.

Merge Danger

Door: two-way. Reverting removes the badge; nothing outside the code changes.

Blast radius: the landing page hero. convt.app deploys by hand, so this reaches the site only after a build:landing deploy.

Refs CNV-12

Created with Claude Opus 5.5 in T3 Code.

The landing page is prerendered, so the browser checks the time and
renders the badge only once launch has passed, with a timer for pages
left open across it.

Refs CNV-12

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@linear-code

linear-code Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
CNV-12 Show the Product Hunt badge on the landing page from launch day

Problem

convt goes live on Product Hunt on 7 October 2026. The landing page has no link to the post, and showing one before launch would point people at it too early.

Goal

The Product Hunt featured badge appears on convt.app from 3 am Eastern on 7 October 2026 and not before.

Acceptance criteria

  • Before 2026-10-07 03:00 EDT the page shows no badge and makes no request to Product Hunt.
  • From then on, the badge shows under the hero and links to the Product Hunt post in a new tab.
  • A page left open across 3 am shows the badge without a reload.

How to verify

Build with bun run build:landing, serve dist/client, and load / at desktop and mobile widths before and after the launch time.

Review in Linear

@devin-ai-integration devin-ai-integration 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.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Devin Review

@greptile-apps

greptile-apps Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

[Low risk] Adds a Product Hunt badge to the landing page.

The PR appears safe to merge; no actionable defects were found.

What we checked:

  • Badge never appears: The static page imports its JavaScript after loading. This lets ProductHuntBadge run its date check.
  • Badge loads before launch: live starts as false, and the component returns nothing while it remains false.

Summary

Adds a Product Hunt badge below the landing page’s “Coming soon” pill.

  • The browser shows it from 07:00 UTC on 7 October 2026.
  • Earlier visits schedule its appearance; prerendered HTML omits it.
  • No actionable issues found. Builds and browser checks were not independently rerun.
  • leoisadev1 intentionally allows pages opened more than 24.8 days early to require a reload, as documented in the code.
  • leoisadev1 explicitly acknowledged that the timer across launch time was not tested.

Reviews (1) · Last reviewed commit: "Show the Product Hunt badge from 3 am ET..."

@graphify-labs graphify-labs 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.

Graphify reviewed this change.

Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).


Graphify review — findings

Adds a Product Hunt "featured" badge to the landing hero that renders only client-side once PRODUCT_HUNT_FROM (3 am EDT, 7 Oct 2026) has passed, so the prerendered HTML never includes it. ProductHuntBadge schedules a timer to make the badge appear on a page left open past launch, but skips the timer when the wait exceeds setTimeout's ~24.8-day limit, so very early visitors see it only after reloading. PRODUCT_HUNT_URL and PRODUCT_HUNT_FROM live in site alongside the other launch constants.

No blocking issues surfaced.

Analysis details — impact, health, verification

Impact & health

Graphify review

Impact — 16 functions depend on the 15 functions this change touches.

Health — grade A; no new coupling hotspots.

Verification — 16 functions in the blast radius were not formally verified this run (proofs are advisory here).

Gate & verification

graphify gate

PASS — objectively clean (no health regressions, tests not run — proofs not run this pass (advisory)). Grounded, not self-assessed.

Advisory (not blocking):

  • verification_scope: 16 function(s) in the blast radius were not formally verified this run

@leoisadev1
leoisadev1 merged commit 7709375 into main Oct 6, 2026
3 of 11 checks passed
@leoisadev1
leoisadev1 deleted the leoplayz317/cnv-12-show-the-product-hunt-badge-on-the-landing-page-from-launch branch October 6, 2026 20:43
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