Skip to content

[184] Landing page#131

Open
BhuvanArn wants to merge 19 commits into
stagingfrom
184-feature-landing-page
Open

[184] Landing page#131
BhuvanArn wants to merge 19 commits into
stagingfrom
184-feature-landing-page

Conversation

@BhuvanArn
Copy link
Copy Markdown
Owner

@BhuvanArn BhuvanArn commented May 10, 2026

What type of PR is this? (check all applicable)

  • ✨ Feature
  • 🛑 Bug
  • ⚠️ Anomaly
  • 📝 Doc
  • 🎨 Style
  • 🧑‍💻 Refactor
  • 🛠️ Setup
  • 🏗️ Build
  • 🔥 Perfs
  • ✅ Test
  • 🔁 CI
  • ⏩ Revert

Description

Adds the marketing landing page at / and reshapes the public shell so authenticated and unauthenticated users see the right chrome on each route.

Highlights

  • New landing page with hero, features, how-it-works, testimonials, pricing and footer (landing-page, landing-nav, landing-footer organisms).
  • Sidebar is now hidden on public auth routes (/login, /register, /forgot-password, /reset-password, /verify-email).
  • Auth pages share a new auth-page-shell molecule: TalkUp logo centered with the form, "Back to home" link top-left.
  • / redirects authenticated users to /simulations via a new createAuthRedirectGuard helper, while still rendering the landing page for anonymous visitors.
  • /about renders the landing nav for anonymous users and the app shell (sidebar) for authenticated users.
  • Fixed a pre-existing axios interceptor issue that bounced anonymous visitors away from / after a failed token refresh (added / to the no-redirect set so the landing page renders cleanly).
  • Refreshed CONTRIBUTING.MD to reflect the GitHub Project + Issues workflow (no more Trello/Kanban references) and the staging base branch.
  • Added unit tests for auth-page-shell and createAuthRedirectGuard, plus Playwright e2e coverage for the landing page and auth shells.

Linked GitHub Ticket

Closes EpitechPromo2027/G-EIP-600-NAN-6-1-eip-tugdual.de-reviers#184

Workspace

  • 🖥️ Web
  • 🛠️ Server
  • 🔁 CI
  • 🤖 Ai
  • 📱 App

Screenshots

Landing page (/)
pr-landing

Login (/login)
pr-login

Register (/register)
pr-register

About page for anonymous users (/about)
pr-about-unauth

@BhuvanArn BhuvanArn self-assigned this May 10, 2026
Copilot AI review requested due to automatic review settings May 10, 2026 18:40
@BhuvanArn BhuvanArn added the enhancement New feature or request label May 10, 2026
@vercel
Copy link
Copy Markdown

vercel Bot commented May 10, 2026

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

Project Deployment Actions Updated (UTC)
talk-up-ai-dev Ready Ready Preview, Comment May 10, 2026 8:38pm

@railway-app
Copy link
Copy Markdown

railway-app Bot commented May 10, 2026

🚅 Deployed to the TalkUp.AI-pr-131 environment in talk-up-ai

Service Status Web Updated (UTC)
Backend ✅ Success (View Logs) May 20, 2026 at 12:56 pm

@railway-app railway-app Bot temporarily deployed to talk-up-ai / TalkUp.AI-pr-131 May 10, 2026 18:40 Destroyed
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

Adds a dedicated marketing/landing experience to the web app, including a public-shell layout for landing + auth-related pages and a redirect that sends authenticated users into the app.

Changes:

  • Replaces the / route with a new LandingPage and redirects authenticated users from / to /simulations.
  • Introduces a shared AuthPageShell for auth flows and updates the root layout to hide the app sidebar on landing/auth routes.
  • Adds Playwright e2e coverage for landing/auth shell rendering plus unit tests for the new auth redirect guard and AuthPageShell.

Reviewed changes

Copilot reviewed 17 out of 17 changed files in this pull request and generated 14 comments.

Show a summary per file
File Description
web/tests/landing.spec.ts New Playwright e2e assertions for landing + auth-page shell behavior (nav/logo links, no sidebar).
web/src/utils/auth.guards.ts Adds createAuthRedirectGuard used to redirect authenticated users away from public pages (landing).
web/src/utils/auth.guards.spec.ts Unit tests for createAuthRedirectGuard.
web/src/services/axiosInstance.ts Adds / to the “no login redirect after refresh fail” allowlist for public routes.
web/src/routes/index.tsx Replaces the old home content with LandingPage and adds beforeLoad auth redirect.
web/src/routes/__root.tsx Adds “public shell” routing logic to omit the app sidebar on landing/auth pages and optionally show landing nav.
web/src/routes/login.tsx Wraps login form in AuthPageShell for consistent auth layout.
web/src/routes/register.tsx Wraps register form in AuthPageShell for consistent auth layout.
web/src/routes/forgot-password.tsx Wraps forgot-password form in AuthPageShell for consistent auth layout.
web/src/routes/reset-password.tsx Wraps reset-password form in AuthPageShell for consistent auth layout.
web/src/routes/verify-email.tsx Wraps verify-email form in AuthPageShell for consistent auth layout.
web/src/components/organisms/landing-page/index.tsx New landing page implementation (hero, features, pricing, testimonials, CTA).
web/src/components/organisms/landing-nav/index.tsx New landing navigation (desktop + mobile).
web/src/components/organisms/landing-footer/index.tsx New landing footer with product/company/legal columns and social links.
web/src/components/molecules/auth-page-shell/index.tsx New shared auth-page shell providing “back to home” and logo link.
web/src/components/molecules/auth-page-shell/index.spec.tsx Unit tests for AuthPageShell.
CONTRIBUTING.MD Updates contribution workflow documentation (issues/branch naming/PR process/CI expectations).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread web/src/routes/__root.tsx
Comment thread web/src/components/organisms/landing-nav/index.tsx Outdated
Comment thread web/src/components/organisms/landing-nav/index.tsx Outdated
Comment thread web/src/components/organisms/landing-nav/index.tsx Outdated
Comment thread web/src/components/organisms/landing-nav/index.tsx Outdated
Comment thread web/src/components/organisms/landing-page/index.tsx Outdated
Comment thread web/src/components/organisms/landing-page/index.tsx Outdated
Comment thread web/src/components/organisms/landing-page/index.tsx
Comment thread web/src/components/organisms/landing-footer/index.tsx Outdated
Comment thread web/src/components/molecules/auth-page-shell/index.tsx Outdated
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

Copilot reviewed 19 out of 19 changed files in this pull request and generated 4 comments.

Comment thread web/src/components/atoms/button/index.tsx
Comment thread web/src/components/atoms/button/index.tsx
Comment on lines 15 to 25
circled?: boolean;
asChild?: boolean;
children?: React.ReactNode;
}
Comment on lines +47 to +56
<ul className="hidden items-center gap-8 lg:flex">
{NAV_LINKS.map((link) => (
<li key={link.hash}>
<a
href={buildHref(link.hash)}
className="text-body-m text-text-weak hover:text-accent transition-colors"
>
{link.label}
</a>
</li>
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

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

Comment thread web/src/utils/auth.guards.ts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants