Add marketing landing page; move chat app to /chat - #42
Merged
Conversation
Build a focused single-scroll marketing landing at `/` (hero + how-it-works timeline + feature cards + honest framing + closing CTA), and move the chat composer to `/chat`. The landing renders chrome-less (no app sidebar/mobile bar); all other routes keep the existing app chrome. - New `pages/Landing.tsx`: GEML aesthetic, light+dark, useReveal scroll-reveal, reduced-motion safe, responsive (no horizontal scroll on mobile). Accurate copy only (six agents, Elo tournament, OpenAlex/PubMed/arXiv/Europe PMC citations, in-browser sim / BYO Groq key, Apache-2.0, by Quang Bui). - App.tsx: branch chrome-less on `pathname === "/"` → <Landing/>; add `/chat` → <Chat/>; `/new` and `*` → redirect to `/chat`. Re-point nav: logo/wordmark → `/` (landing), "New session"/"+ New" → `/chat`. - Dashboard.tsx: "Launch a session", "+ New session", example prompts → `/chat`. - CommandPalette.tsx: "Start new research session" → `/chat`; "Go to dashboard" → `/sessions` (was incorrectly `/`). - Chat.tsx: "Session not found → New session" → `/chat`; add aria-labels (Pause/Resume/Abort) to the icon-only thread control buttons. Deep-link refresh already survives via build:pages 404.html fallback. Co-Authored-By: Claude Fable 5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Builds a focused, single-scroll marketing landing page at
/and moves the chat app to/chat, matching the launch plan./→ newLandingpage, rendered chrome-less (no app sidebar / mobile bar)./chat→ the existing chat composer (with app chrome)./s/:id,/s/:id/site,/sessions).Landing page (
frontend/src/pages/Landing.tsx)GEML "graph-paper academic" aesthetic, light + dark,
useRevealscroll-reveal (reduced-motion safe), responsive with no horizontal scroll on mobile. Sections: masthead · hero · how-it-works timeline (Generate → Elo tournament → Evolve → Stress-test → Ranked proposal) · six feature cards · honest framing · closing CTA · footer. Accurate copy only — six specialized agents, live Elo tournament, real citations (OpenAlex/PubMed/arXiv/Europe PMC), self-critique, shareable proposal, free in-browser sim / bring-your-own Groq key, Apache-2.0, by Quang Bui.Routing & link re-points
App.tsx: branch chrome-less onpathname === "/"→<Landing/>; add/chat→<Chat/>;/newand*→ redirect to/chat. Logo/wordmark →/(landing); "New session" / "+ New" →/chat.Dashboard.tsx: "Launch a session", "+ New session", example prompts →/chat(?goal=preserved).CommandPalette.tsx: "Start new research session" →/chat; "Go to dashboard" →/sessions(was incorrectly/).Chat.tsx: "Session not found → New session" →/chat; addedaria-label(Pause/Resume/Abort) to icon-only thread controls.Deep-link refresh already survives via the
build:pages404.htmlfallback — no deploy/vite change needed.Testing
npm run build(tsc + vite) passes.dev:demo+ browser: landing renders chrome-less in dark, light, and mobile (no horizontal overflow); "Launch the demo" →/chat;/chat?goal=prefills; sending creates a session →/s/:idand runs live; hard-refresh of/chatand/s/:idboot via SPA fallback; Dashboard + command-palette links resolve to/chat.🤖 Generated with Claude Code