`
import { betterAuth } from 'better-auth';
import { drizzleAdapter } from 'better-auth/adapters/drizzle';
import {
organization,
twoFactor,
} from 'better-auth/plugins';
type AuthReturnType = ReturnType<typeof betterAuth>;
export const auth: AuthReturnType = betterAuth({
databaseHooks: {
user: {
create: {
after: async (user) => {
await createDefaultOrganization({ user });
},
},
},
session: {
create: {
before: async (session) => {
const org = await getDefaultOrganization(session.userId);
return {
data: {
...session,
activeOrganizationId: org?.id,
},
};
},
},
},
},
appName: process.env.APP_NAME,
plugins: [
organization(),
twoFactor(...),
],
});
`
import { betterAuth } from 'better-auth';
import { drizzleAdapter } from 'better-auth/adapters/drizzle';
import {
organization,
twoFactor,
} from 'better-auth/plugins';
type AuthReturnType = ReturnType<typeof betterAuth>;
export const auth: AuthReturnType = betterAuth({
databaseHooks: {
user: {
create: {
after: async (user) => {
await createDefaultOrganization({ user });
},
},
},
session: {
create: {
before: async (session) => {
const org = await getDefaultOrganization(session.userId);
return {
data: {
...session,
activeOrganizationId: org?.id,
},
};
},
},
},
},
appName: process.env.APP_NAME,
plugins: [
organization(),
twoFactor(...),
],
});