Add complete CKE Project implementation with news management system

This commit is contained in:
albivkt
2025-07-13 01:34:11 +03:00
parent c9317555ca
commit a84810c6b9
32 changed files with 8901 additions and 811 deletions

66
prisma/schema.prisma Normal file
View File

@ -0,0 +1,66 @@
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "sqlite"
url = env("DATABASE_URL")
}
model News {
id String @id @default(cuid())
title String
slug String @unique
summary String
content String
category String
imageUrl String?
featured Boolean @default(false)
published Boolean @default(true)
publishedAt DateTime @default(now())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
authorId String?
author User? @relation(fields: [authorId], references: [id])
views Int @default(0)
likes Int @default(0)
tags String @default("")
@@map("news")
}
model User {
id String @id @default(cuid())
email String @unique
username String @unique
password String
role UserRole @default(USER)
name String?
avatar String?
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
news News[]
@@map("users")
}
model Category {
id String @id @default(cuid())
name String @unique
slug String @unique
description String?
color String @default("#3B82F6")
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@map("categories")
}
enum UserRole {
USER
ADMIN
EDITOR
}