import { betterAuth } from 'better-auth'; import { prismaAdapter } from 'better-auth/adapters/prisma'; import { PrismaClient } from '@prisma/client'; import { admin } from 'better-auth/plugins'; const prisma = new PrismaClient(); export const auth = betterAuth({ database: prismaAdapter(prisma, { provider: 'postgresql', }), plugins: [admin()], emailAndPassword: { enabled: true, requireEmailVerification: true, sendResetPassword: async ({ user, token }) => { console.log(`Send reset password email to ${user.email}: ${token}`); }, }, emailVerification: { sendVerificationEmail: async ({ user, token }) => { console.log(`Send verification email to ${user.email}: ${token}`); }, sendOnSignIn: true, autoSignInAfterVerification: true, }, trustedOrigins: ['http://localhost:5173', 'http://localhost:5174'], socialProviders: { google: { prompt: 'select_account', clientId: process.env.GOOGLE_CLIENT_ID!, clientSecret: process.env.GOOGLE_CLIENT_SECRET!, }, }, });