Skip to content

Add a public landing page - #8

Merged
ralyodio merged 1 commit into
mainfrom
feat/landing-page
Aug 11, 2026
Merged

ralyodio merged 1 commit into
mainfrom
feat/landing-page

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

There was no front door. / redirected straight to /login, so anyone who had never signed up hit a password form with no explanation of what the product is.

What changed

  • / is now the public landing page (PRD §44): hero, the identity graph, why-now signals, the human-in-the-loop flow, and the anti-spam guarantees. Mobile-first, uses the existing design tokens, works in light and dark.
  • A signed-in visitor is redirected to their inbox instead. The check is cookie presence only, so the landing page costs no API round trip; a stale cookie lands on /today, which redirects to /login itself.
  • The inbox moves to /today.
  • The bottom navigation hides on public routes (/, /login, /offline) — app chrome before sign-in is meaningless.
  • /more gains a sign-out control. There was no way to log out from the UI at all.

CI

Asserts / returns 200 for a signed-out visitor and contains its own copy, so a redirect loop or an empty marketing page fails the build. The existing "PWA reaches the API" check moves to /today, which is the route that actually exercises it.

Verification

291 tests, typecheck clean, next build clean, prettier clean.

🤖 Generated with Claude Code

There was no front door: / redirected straight to /login, so a visitor who
had never signed up saw a password form and nothing explaining the product.

/ is now the public landing page from PRD §44 — hero, the identity graph, why
now, the human-in-the-loop flow, and the anti-spam guarantees. A signed-in
visitor is redirected to their inbox instead, checked by cookie presence so
the page costs no API round trip.

The inbox moves to /today. The bottom navigation hides itself on public
routes, where app chrome is meaningless, and /more gains the sign-out control
the UI never had.

CI now asserts / renders for a signed-out visitor and contains its own copy,
so a redirect loop or a blank marketing page fails the build.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@ralyodio
ralyodio merged commit eef20b4 into main Aug 11, 2026
4 checks passed
@ralyodio
ralyodio deleted the feat/landing-page branch August 11, 2026 14:39
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