chore: update nextjs example

This commit is contained in:
Bereket Engida
2024-10-20 22:44:33 +03:00
parent 4edc4289e5
commit dbd91509a3
11 changed files with 517 additions and 53 deletions

View File

@@ -1,3 +1,4 @@
import Database from "better-sqlite3";
import { betterAuth } from "better-auth";
import {
bearer,
@@ -5,6 +6,7 @@ import {
passkey,
twoFactor,
admin,
multiSession,
} from "better-auth/plugins";
import { reactInvitationEmail } from "./email/invitation";
import { LibsqlDialect } from "@libsql/kysely-libsql";
@@ -14,16 +16,10 @@ import { resend } from "./email/resend";
const from = process.env.BETTER_AUTH_EMAIL || "delivered@resend.dev";
const to = process.env.TEST_EMAIL || "";
const libsql = new LibsqlDialect({
url: process.env.TURSO_DATABASE_URL || "",
authToken: process.env.TURSO_AUTH_TOKEN || "",
});
const database = new Database("better-auth.sqlite");
export const auth = betterAuth({
database: {
dialect: libsql,
type: "sqlite",
},
database,
emailVerification: {
async sendVerificationEmail(user, url) {
console.log("Sending verification email to", user.email);
@@ -35,7 +31,12 @@ export const auth = betterAuth({
});
console.log(res, user.email);
},
sendEmailVerificationOnSignUp: true,
sendOnSignUp: true,
},
account: {
accountLinking: {
trustedProviders: ["google", "github"],
},
},
emailAndPassword: {
enabled: true,
@@ -51,6 +52,28 @@ export const auth = betterAuth({
});
},
},
socialProviders: {
github: {
clientId: process.env.GITHUB_CLIENT_ID || "",
clientSecret: process.env.GITHUB_CLIENT_SECRET || "",
},
google: {
clientId: process.env.GOOGLE_CLIENT_ID || "",
clientSecret: process.env.GOOGLE_CLIENT_SECRET || "",
},
discord: {
clientId: process.env.DISCORD_CLIENT_ID || "",
clientSecret: process.env.DISCORD_CLIENT_SECRET || "",
},
microsoft: {
clientId: process.env.MICROSOFT_CLIENT_ID || "",
clientSecret: process.env.MICROSOFT_CLIENT_SECRET || "",
},
twitch: {
clientId: process.env.TWITCH_CLIENT_ID || "",
clientSecret: process.env.TWITCH_CLIENT_SECRET || "",
},
},
plugins: [
organization({
async sendInvitationEmail(data) {
@@ -91,27 +114,6 @@ export const auth = betterAuth({
passkey(),
bearer(),
admin(),
multiSession(),
],
socialProviders: {
github: {
clientId: process.env.GITHUB_CLIENT_ID || "",
clientSecret: process.env.GITHUB_CLIENT_SECRET || "",
},
google: {
clientId: process.env.GOOGLE_CLIENT_ID || "",
clientSecret: process.env.GOOGLE_CLIENT_SECRET || "",
},
discord: {
clientId: process.env.DISCORD_CLIENT_ID || "",
clientSecret: process.env.DISCORD_CLIENT_SECRET || "",
},
microsoft: {
clientId: process.env.MICROSOFT_CLIENT_ID || "",
clientSecret: process.env.MICROSOFT_CLIENT_SECRET || "",
},
twitch: {
clientId: process.env.TWITCH_CLIENT_ID || "",
clientSecret: process.env.TWITCH_CLIENT_SECRET || "",
},
},
});