Skip to content

feat(frontend): add marketing landing page with auth - #132

Open
Goldokpa wants to merge 1 commit into
mainfrom
feat/landing-page
Open

feat(frontend): add marketing landing page with auth#132
Goldokpa wants to merge 1 commit into
mainfrom
feat/landing-page

Conversation

@Goldokpa

Copy link
Copy Markdown
Member

Summary

Adds a public marketing landing page and restructures routing so the dashboard lives under /app.

  • Landing page at / — animated hero, particle globe, feature sections (components/landing/)
  • Authentication — Firebase-backed email/password + Google sign-in, with graceful demo mode when VITE_FIREBASE_* env vars are absent (auth UI renders, sign-in shows a friendly notice instead of crashing)
  • Routing restructure:
    • / → Landing
    • /signin, /signup → auth pages
    • /app/* → dashboard (previously at root); legacy /upload, /runs, /analytics, /settings now redirect to /app/*
  • .gitignore fix — the Python lib/ pattern was unintentionally ignoring frontend/src/lib/ (which holds firebase.ts), so the deploy build would have failed without it

Notes

  • Production build passes: npm run build → 861 modules, built in ~4s
  • Firebase config is read entirely from env vars — no secrets committed
  • New dependency: firebase@^12

Test plan

  • CI green
  • / renders the landing page
  • /app renders the dashboard; legacy paths redirect
  • Auth pages render in demo mode without Firebase keys set

🤖 Generated with Claude Code

…structure

Adds a public marketing landing page at / with animated hero, feature
sections, and particle globe, plus Firebase-backed authentication
(email/password + Google) that degrades gracefully to demo mode when
VITE_FIREBASE_* env vars are absent.

Routing restructure:
- / → new Landing page
- /signin, /signup → auth pages
- /app/* → dashboard (was at root); legacy /upload, /runs, etc. redirect

Also fixes a .gitignore rule where the Python `lib/` pattern was
unintentionally ignoring frontend/src/lib/ (which holds firebase.ts).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.

2 participants