Login gained email/password plus a forgot-password flow (/reset-password). Better Auth’s SQLite file uses /tmp on Vercel so auth routes no longer crash on a read-only data/ mkdir. Reset mail reuses the existing Resend transactional helper.
Highlights
Log in / Sign up dialog includes email + password; Forgot password? sends a reset link.
/reset-password reads the Better Auth token query param and sets a new password.
Serverless auth DB path is /tmp/ftn-auth.db (ephemeral per instance). Local next dev still uses data/auth.db.