mirror of
https://github.com/better-auth/better-hub
synced 2026-08-09 12:26:04 +00:00
- removed code themes in favour of themes having built-in code syntax themes. # Themes (30) ## Supabase <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/ebe48a46-93ee-4bea-9cc8-dda97531a2c8" /> ## Vercel <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/9736aa0d-7b72-47d7-bf24-8416aeb14b08" /> ## Evil Rabbit <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/7e63a20d-634d-4143-8179-2b41129412b9" /> ## Mintlify <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/67d61fb8-a9d0-44da-9d65-2dd2e5b35214" /> ## Tailwind <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/88bc8177-f5a3-45e9-ba39-6ff3fdceb362" /> ## OpenAI <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/432386b2-a7fb-40d0-85a7-7ed0930a5f3f" /> ## Prisma <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/73a7b0a1-8e09-4321-b21e-c2baaf866cfa" /> ## ElevenLabs <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/57de3e05-5924-40f2-993c-c0ba651bb6ed" /> ## Resend <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/a9855ba8-135d-4b5c-a77d-0c081dcf552b" /> ## Trigger.dev <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/f833d2f6-0f02-4f85-b8ba-da20ce489c98" /> ## Nuxt <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/80cf39d5-b04c-4914-b0fe-e057581827a4" /> ## BrowserBase <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/6be2b610-0e67-4149-8e7c-6ad3e670a96d" /> ## Cloudflare <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/3dd6847d-e848-4718-af26-4fae755943b1" /> ## Gemini <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/a1ba05fd-4299-4f6b-8211-18182ec96a5e" /> ## Stripe <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/570cf5c9-d00b-4306-b7fe-72cbd6eeb941" /> ## Bitmap <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/42e975b4-f1db-443f-9bac-daff02fdea7f" /> ## Nior <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/0f270ede-0325-4061-9662-e4db4e06e44b" /> ## Ice <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/96de2a91-61b9-46c6-a00f-063b6f262559" /> ## Sand <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/162404fd-b1c6-4991-bf8f-c875fead82b0" /> ## Forest <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/df5e64fc-d31f-4dce-b249-4bedb17e10aa" /> ## Mono <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/f9f3e93a-c70c-457a-b214-4fecdfd31992" /> ## Breeze <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/227fb948-ab69-44f5-bb03-16df96a73bd3" /> ## Candy <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/e952135d-0e7b-4b7e-9e27-8259e78bd71c" /> ## Crismon <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/8fd0ffd4-48a4-4739-8d7b-befa2379eab3" /> ## Falcon <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/19a03c00-f31b-4977-ad7b-4a6ef70e115e" /> ## Meadow <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/31bae90b-dc5b-4e2e-85d7-6404e1cb213c" /> ## Midnight <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/aa2aecce-1865-4eee-a653-f43490bcc895" /> ## Raindrop <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/793e012c-c6bb-4467-9408-48670754d4f7" /> ## Sunset <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/34a05617-7502-447e-aba3-9fcda7564c0e" /> ## Firecrawl <img width="2820" height="2124" alt="image" src="https://github.com/user-attachments/assets/25ef8dc0-352f-4f81-b00f-df1ca4d3d59d" />
291 lines
6.2 KiB
Plaintext
291 lines
6.2 KiB
Plaintext
|
|
generator client {
|
|
provider = "prisma-client"
|
|
output = "../src/generated/prisma"
|
|
}
|
|
|
|
datasource db {
|
|
provider = "postgresql"
|
|
}
|
|
|
|
model User {
|
|
id String @id
|
|
name String
|
|
email String
|
|
githubPat String?
|
|
onboardingDone Boolean @default(false)
|
|
emailVerified Boolean
|
|
image String?
|
|
createdAt DateTime
|
|
updatedAt DateTime
|
|
|
|
sessions Session[]
|
|
accounts Account[]
|
|
|
|
aiMessageCount Int @default(0)
|
|
lastActiveAt DateTime?
|
|
role String?
|
|
banned Boolean? @default(false)
|
|
banReason String?
|
|
banExpires DateTime?
|
|
|
|
@@map("user")
|
|
@@index([githubPat, email])
|
|
}
|
|
|
|
model Session {
|
|
id String @id
|
|
expiresAt DateTime
|
|
token String @unique
|
|
createdAt DateTime
|
|
updatedAt DateTime
|
|
ipAddress String?
|
|
userAgent String?
|
|
userId String
|
|
|
|
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
|
|
impersonatedBy String?
|
|
|
|
@@map("session")
|
|
@@index([userId, expiresAt])
|
|
}
|
|
|
|
model Account {
|
|
id String @id
|
|
accountId String
|
|
providerId String
|
|
userId String
|
|
accessToken String?
|
|
refreshToken String?
|
|
idToken String?
|
|
accessTokenExpiresAt DateTime?
|
|
refreshTokenExpiresAt DateTime?
|
|
scope String?
|
|
password String?
|
|
createdAt DateTime
|
|
updatedAt DateTime
|
|
|
|
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
|
|
@@map("account")
|
|
@@index([userId, providerId])
|
|
}
|
|
|
|
model Verification {
|
|
id String @id
|
|
identifier String
|
|
value String
|
|
expiresAt DateTime
|
|
createdAt DateTime?
|
|
updatedAt DateTime?
|
|
|
|
@@map("verification")
|
|
@@index([identifier, expiresAt])
|
|
}
|
|
|
|
model GithubCacheEntry {
|
|
userId String
|
|
cacheKey String
|
|
cacheType String
|
|
dataJson String
|
|
syncedAt String
|
|
etag String?
|
|
|
|
@@id([userId, cacheKey])
|
|
@@index([userId, cacheType])
|
|
@@map("github_cache_entries")
|
|
}
|
|
|
|
model GithubSyncJob {
|
|
id Int @id @default(autoincrement())
|
|
userId String
|
|
dedupeKey String
|
|
jobType String
|
|
payloadJson String
|
|
status String @default("pending")
|
|
attempts Int @default(0)
|
|
nextAttemptAt String
|
|
startedAt String?
|
|
lastError String?
|
|
createdAt String
|
|
updatedAt String
|
|
|
|
@@unique([userId, dedupeKey], map: "idx_github_sync_jobs_dedupe_active")
|
|
@@index([userId, status, nextAttemptAt, id])
|
|
@@map("github_sync_jobs")
|
|
}
|
|
|
|
model ChatConversation {
|
|
id String @id
|
|
userId String
|
|
chatType String
|
|
contextKey String
|
|
title String?
|
|
activeStreamId String?
|
|
createdAt String
|
|
updatedAt String
|
|
|
|
messages ChatMessage[]
|
|
|
|
@@unique([userId, contextKey])
|
|
@@index([userId, chatType])
|
|
@@map("chat_conversations")
|
|
}
|
|
|
|
model ChatMessage {
|
|
id String @id
|
|
conversationId String
|
|
role String
|
|
content String
|
|
partsJson String?
|
|
createdAt String
|
|
|
|
conversation ChatConversation @relation(fields: [conversationId], references: [id], onDelete: Cascade)
|
|
|
|
@@index([conversationId, createdAt])
|
|
@@map("chat_messages")
|
|
}
|
|
|
|
model GhostTab {
|
|
userId String
|
|
tabId String
|
|
label String
|
|
position Int
|
|
|
|
@@id([userId, tabId])
|
|
@@map("ghost_tabs")
|
|
}
|
|
|
|
model GhostTabState {
|
|
userId String @id
|
|
activeTabId String
|
|
counter Int @default(1)
|
|
|
|
@@map("ghost_tab_state")
|
|
}
|
|
|
|
model UserSettings {
|
|
userId String @id
|
|
displayName String?
|
|
theme String @default("system")
|
|
colorTheme String @default("hub")
|
|
colorMode String @default("dark")
|
|
ghostModel String @default("auto")
|
|
useOwnApiKey Boolean @default(false)
|
|
openrouterApiKey String?
|
|
githubPat String?
|
|
codeThemeLight String @default("vitesse-light")
|
|
codeThemeDark String @default("vitesse-black")
|
|
codeFont String @default("default")
|
|
codeFontSize Int @default(13)
|
|
onboardingDone Boolean @default(false)
|
|
updatedAt String
|
|
|
|
@@map("user_settings")
|
|
}
|
|
|
|
model CustomCodeTheme {
|
|
id String @id
|
|
userId String
|
|
name String
|
|
mode String @default("dark")
|
|
themeJson String
|
|
bgColor String
|
|
fgColor String
|
|
accentColor String
|
|
createdAt String
|
|
|
|
@@map("custom_code_themes")
|
|
}
|
|
|
|
|
|
model SearchEmbedding {
|
|
id String @id
|
|
userId String
|
|
contentType String
|
|
contentKey String
|
|
owner String
|
|
repo String
|
|
itemNumber Int
|
|
contentHash String
|
|
embeddingJson String
|
|
title String?
|
|
snippet String
|
|
metadataJson String?
|
|
createdAt String
|
|
updatedAt String
|
|
|
|
@@index([userId, owner, repo])
|
|
@@index([userId, contentType, contentKey])
|
|
@@map("search_embeddings")
|
|
}
|
|
|
|
model PinnedItem {
|
|
id String @id
|
|
userId String
|
|
owner String
|
|
repo String
|
|
url String
|
|
title String
|
|
itemType String
|
|
pinnedAt String
|
|
|
|
@@unique([userId, owner, repo, url])
|
|
@@index([userId, owner, repo])
|
|
@@map("pinned_items")
|
|
}
|
|
|
|
model PromptRequest {
|
|
id String @id
|
|
userId String
|
|
userLogin String?
|
|
userName String?
|
|
userAvatarUrl String?
|
|
owner String
|
|
repo String
|
|
title String
|
|
body String
|
|
status String @default("open")
|
|
acceptedById String?
|
|
acceptedByName String?
|
|
createdAt String
|
|
updatedAt String
|
|
|
|
@@index([owner, repo, status])
|
|
@@index([userId])
|
|
@@map("prompt_requests")
|
|
}
|
|
|
|
model PromptRequestComment {
|
|
id String @id
|
|
promptRequestId String
|
|
userId String
|
|
userLogin String?
|
|
userName String
|
|
userAvatarUrl String
|
|
body String
|
|
createdAt String
|
|
updatedAt String
|
|
|
|
@@index([promptRequestId, createdAt])
|
|
@@index([userId])
|
|
@@map("prompt_request_comments")
|
|
}
|
|
|
|
model PromptRequestReaction {
|
|
id String @id
|
|
promptRequestId String
|
|
userId String
|
|
userLogin String?
|
|
userName String
|
|
userAvatarUrl String
|
|
content String
|
|
createdAt String
|
|
|
|
@@unique([promptRequestId, userId, content])
|
|
@@index([promptRequestId])
|
|
@@index([userId])
|
|
@@map("prompt_request_reactions")
|
|
}
|