Installation
Add Lucia to your project
bun add lucia @lucia-auth/adapter-prismaSetup
I am using Lucia with Prisma as the database provider.
Create a lucia.ts file and add the following content
import { lucia } from "lucia";
import { prisma } from "@lucia-auth/adapter-prisma";
import { db } from "../db";
export const auth = lucia({ env: "DEV", adapter: prisma(db) });
export type Auth = typeof auth;
Add or update Prisma Schema
model User {
id String @id @unique
auth_session Session[]
key Key[]
}
model Session {
id String @id @unique
user_id String
active_expires BigInt
idle_expires BigInt
user User @relation(references: [id], fields: [user_id], onDelete: Cascade)
@@index([user_id])
}
model Key {
id String @id @unique
hashed_password String?
user_id String
user User @relation(references: [id], fields: [user_id], onDelete: Cascade)
@@index([user_id])
}Initialize database migrations using this command
bunx prisma migrate dev --name init