Auth Patterns

Better-auth integration for authentication. Use when implementing login, registration, protected routes, or email verification.

majiayu000 164738d 2 files · 2.1 KB Updated 567 repo stars

File contents

Auth Patterns

Quick Pattern

// Login form
export const login = form(schema, async ({ email, password }) => {
	const event = getRequestEvent();
	await auth.api.signInEmail({
		body: { email, password },
		headers: event.request.headers,
	});
	redirect(303, '/dashboard'); // Outside try/catch
});

// Protected query
export const get_data = guarded_query(() => {
	return { message: 'Protected data' };
});

Core Principles

  • Use getRequestEvent() for headers (cookie access)
  • Redirect MUST be outside try/catch (throws error)
  • Use guarded_query/form/command for protected endpoints
  • Email verification required before login
  • Commands cannot redirect - use client-side goto()

Reference Files

  • auth-setup.md - Complete better-auth configuration
  • auth-usage.md - All auth patterns and examples
  • email-verification.md - Email verification flow

majiayu000/claude-skill-registry-data/tree/main/testing/auth-patterns commit 164738df34

Frequently asked questions

npx skillmds add majiayu000/auth-patterns-2