// This is your Prisma schema file, // learn more about it in the docs: https://pris.ly/d/prisma-schema // Looking for ways to speed up your queries, or scale easily with your serverless or edge functions? // Try Prisma Accelerate: https://pris.ly/cli/accelerate-init generator client { provider = "prisma-client-js" } datasource db { provider = "postgresql" url = env("DATABASE_URL") } model Document { id Int @id @default(autoincrement()) title String content String? published Boolean @default(false) authorId Int author User @relation(fields: [authorId], references: [id]) s3Key String status String @default("pending") // pending, uploading, completed, failed sharedWith User[] @relation("SharedDocuments") createdAt DateTime @default(now()) updatedAt DateTime @updatedAt } model User { id Int @id @default(autoincrement()) email String @unique name String? password String isAdmin Boolean @default(false) authoredDocuments Document[] @relation("AuthoredDocuments") sharedDocuments Document[] @relation("SharedDocuments") notifications Notification[] } model Notification { id Int @id @default(autoincrement()) message String read Boolean @default(false) userId Int user User @relation(fields: [userId], references: [id]) createdAt DateTime @default(now()) }