This is a Next.js project bootstrapped with create-next-app
.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
- Prisma, mongodb ve next13 backendi kullanılarak basit bir backend yazılmıştır ve anasayfadaki ilgili kartların datası database sorguları ile gelmektedir. Tüm komponentler server komponentidir ve next13 ile gelen komponent içinde sorgu atma olayı kullanılmıştır.
- NFT ile Creator ilişkilendirilmiştir
model Nft {
id String @id @default(auto()) @map("_id") @db.ObjectId
title String
description String
creator Creator @relation(fields: [creatorId], references: [id])
creatorId String @map("creatorId") @db.ObjectId
price Float
}
model Creator {
id String @id @default(auto()) @map("_id") @db.ObjectId
name String
nfts Nft[]
}
POST REQUEST > http://localhost:3000/api/new-nft
{
"title":"The Big mac",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed pulvinar sollicitudin dui. ",
"creatorId": "64f76482a41912ccee22de20",
"price": 1.5
}
RESPONSE > {
"status": "success",
"message": "NFT oluşturuldu",
"data": {
"nft": {
"id": "64f787f7492408e4de14ee04",
"title": "The Big mac",
"description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed pulvinar sollicitudin dui. ",
"creatorId": "64f76482a41912ccee22de20",
"price": 1.5
}
}
}
POST REQUEST > http://localhost:3000/api/creator/new-creator
{
"name": "Roger Waters"
}
RESPONSE > {
"status": "success",
"message": "creator oluşturuldu",
"data": {
"creator": {
"id": "64f76482a41912ccee22de20",
"name": "Roger Waters"
}
}
}
- Tailwindcss kullanıldı fakat bazı componentlerdeki elemanlar modulercss ile yazıldı.
- Case kısa olduğu için herhangi bir değişken vs tanımlamadım fakat tanımlanabilir. (bu hali ile biraz kod tekrarı var)