Commit Graph
6 Commits
Author SHA1 Message Date
Claude 43c3ef8b6b Redirect to a new Discover page after saving profile
The Save button was working (PATCH /api/profile succeeded), but the
only feedback was a small "Saved." text with no page change - easy to
read as "nothing happened," especially with no next step to move to.

Added a placeholder /discover page (protected, same as /profile) and
redirect there after a successful save, once the "Saved." confirmation
has been visible for a moment. This is a stand-in for the real
browse-other-members feature that's next on the roadmap, not the full
feature itself.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VL5YUEf2B9LG4xdVUQwcSg
2026-09-28 10:54:17 +00:00
Claude b5ee699a28 Add error handling for database failures in signup/login/profile
None of the database calls in these three places were wrapped in
try/catch, so any database hiccup (disk issue, lock contention, etc.)
surfaced as an unhandled 500 with a useless generic message and no
server-side log to explain why.

Found this while testing every page's redirects end to end: a broken
test setup on my end (an old server process left running against a
deleted database file) produced exactly this failure mode, which
would look identical to a real intermittent outage to an end user.

Now: signup and profile-update return a clear "try again in a
moment" message with the real error logged server-side; login logs
the real error but still shows the existing generic
"incorrect email or password" message to the client (matches
current behavior, avoids leaking account existence).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VL5YUEf2B9LG4xdVUQwcSg
2026-09-28 06:05:51 +00:00
Claude eb7103e97a Fix sign-up/login not always redirecting to profile
Two issues:
- The login page had no error handling around the sign-in call, so any
  hiccup (slow connection, first page compile, etc.) failed silently:
  the button stayed stuck on "Logging in..." with no redirect and no
  error shown.
- Both pages used a client-side router transition to move to /profile
  right after signing in, which can race with the session cookie
  landing in the browser. Switched to a full page navigation instead,
  which guarantees the cookie is present before /profile checks it.

Verified with a 10-run automated stress test (5 signups + 5 logins,
back to back with no delay) against a production build - all 10 now
land on /profile reliably.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VL5YUEf2B9LG4xdVUQwcSg
2026-09-28 05:36:58 +00:00
Claude 7b4f05daab Make SQLite database self-create on serverless hosts
Vercel's serverless functions only allow writes to /tmp, and it starts
empty on every cold start. Point the database there in production and
create the User table on first request if it doesn't exist yet, so the
app can be deployed for a live preview without manual database setup.

Note: this is a demo-friendly stand-in — data does not persist across
cold starts on Vercel. A real persistent database is a later phase.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VL5YUEf2B9LG4xdVUQwcSg
2026-09-25 11:43:08 +00:00
Claude 4e8a2d9037 Add Phase 0: sign-up, login, and profile
- Next.js (App Router) + TypeScript + Tailwind
- Prisma + SQLite for the User model
- Sign-up with 18+ age gate, email/password validation (zod), bcrypt hashing
- Login via NextAuth credentials provider, JWT sessions
- Protected /profile route (view + edit name/bio)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VL5YUEf2B9LG4xdVUQwcSg
2026-09-24 13:49:28 +00:00
keithrana a3e254378d Initial commit 2026-09-24 23:42:56 +10:00