mirror of
https://github.com/leonvanzyl/agentic-coding-starter-kit.git
synced 2026-02-01 07:03:36 +00:00
feat: replace Google OAuth with email/password authentication
Replace Google OAuth provider with email/password authentication to reduce friction for MVP development and vibe coding workflows. Changes: - Remove Google OAuth configuration from auth.ts - Add emailAndPassword provider with enabled: true - Add email verification with sendOnSignUp: true - Add password reset functionality - Log verification and reset URLs to terminal (no email integration yet) New auth pages (src/app/(auth)/): - /login - Sign in page - /register - Sign up page - /forgot-password - Password reset request - /reset-password - Password reset completion New components (src/components/auth/): - sign-up-form.tsx - Registration form - forgot-password-form.tsx - Password reset request form - reset-password-form.tsx - Password reset form Updated components: - sign-in-button.tsx - Now email/password form instead of Google button - user-profile.tsx - Shows Sign in/Sign up buttons when logged out Bug fixes: - Fix React render error in profile page by wrapping router.push in useEffect Config updates: - Remove GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET from env.example - Update CLAUDE.md documentation to reflect email/password auth - Add requestPasswordReset, resetPassword, sendVerificationEmail to auth-client exports All changes applied to both main project and create-agentic-app template. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
16
CLAUDE.md
16
CLAUDE.md
@@ -8,7 +8,7 @@ This is a Next.js 16 boilerplate for building AI-powered applications with authe
|
||||
|
||||
- **Framework**: Next.js 16 with App Router, React 19, TypeScript
|
||||
- **AI Integration**: Vercel AI SDK 5 + OpenRouter (access to 100+ AI models)
|
||||
- **Authentication**: BetterAuth with Google OAuth
|
||||
- **Authentication**: BetterAuth with Email/Password
|
||||
- **Database**: PostgreSQL with Drizzle ORM
|
||||
- **UI**: shadcn/ui components with Tailwind CSS 4
|
||||
- **Styling**: Tailwind CSS with dark mode support (next-themes)
|
||||
@@ -34,6 +34,11 @@ This is a Next.js 16 boilerplate for building AI-powered applications with authe
|
||||
```
|
||||
src/
|
||||
├── app/ # Next.js App Router
|
||||
│ ├── (auth)/ # Auth route group
|
||||
│ │ ├── login/ # Login page
|
||||
│ │ ├── register/ # Registration page
|
||||
│ │ ├── forgot-password/ # Forgot password page
|
||||
│ │ └── reset-password/ # Reset password page
|
||||
│ ├── api/
|
||||
│ │ ├── auth/[...all]/ # Better Auth catch-all route
|
||||
│ │ ├── chat/route.ts # AI chat endpoint (OpenRouter)
|
||||
@@ -45,7 +50,10 @@ src/
|
||||
│ └── layout.tsx # Root layout
|
||||
├── components/
|
||||
│ ├── auth/ # Authentication components
|
||||
│ │ ├── sign-in-button.tsx
|
||||
│ │ ├── sign-in-button.tsx # Sign in form
|
||||
│ │ ├── sign-up-form.tsx # Sign up form
|
||||
│ │ ├── forgot-password-form.tsx
|
||||
│ │ ├── reset-password-form.tsx
|
||||
│ │ ├── sign-out-button.tsx
|
||||
│ │ └── user-profile.tsx
|
||||
│ ├── ui/ # shadcn/ui components
|
||||
@@ -83,10 +91,6 @@ POSTGRES_URL=postgresql://user:password@localhost:5432/db_name
|
||||
# Better Auth
|
||||
BETTER_AUTH_SECRET=32-char-random-string
|
||||
|
||||
# Google OAuth
|
||||
GOOGLE_CLIENT_ID=your-google-client-id
|
||||
GOOGLE_CLIENT_SECRET=your-google-client-secret
|
||||
|
||||
# AI via OpenRouter
|
||||
OPENROUTER_API_KEY=sk-or-v1-your-key
|
||||
OPENROUTER_MODEL=openai/gpt-5-mini # or any model from openrouter.ai/models
|
||||
|
||||
Reference in New Issue
Block a user