Database Collections Setup
Create Database
- Go to Appwrite Console → Databases
- Click Create Database
- Set ID:
portfolio_db - Name:
Portfolio Database
Core Collections
blogs
Main blog posts collection.| Attribute | Type | Size | Required |
|---|---|---|---|
title | String | 255 | Yes |
category | String | 100 | Yes |
description | String | 500 | Yes |
thumbnailUrl | String | 2000 | Yes |
galleryUrls | String[] | 2000 | No |
likes | Integer | - | No |
featured | Boolean | - | No |
fullDescription | String | 100000 | Yes |
customSlug | String | 255 | Yes |
authorNames | String[] | 255 | No |
authorImages | String[] | 2000 | No |
publishDate | String | 50 | Yes |
slug_idx(unique) oncustomSlugcategory_idxoncategoryfeatured_idxonfeatured
projects
Portfolio projects collection.| Attribute | Type | Size | Required |
|---|---|---|---|
title | String | 255 | Yes |
category | String | 100 | Yes |
description | String | 500 | Yes |
thumbnailUrl | String | 2000 | Yes |
galleryUrls | String[] | 2000 | No |
likes | Integer | - | No |
featured | Boolean | - | No |
fullDescription | String | 100000 | Yes |
customSlug | String | 100 | Yes |
useProjectPrefix | Boolean | - | Yes |
projectLink | String | 2000 | No |
projectDetails | String[] | 500 | No |
products
Shop products collection.| Attribute | Type | Size | Required |
|---|---|---|---|
name | String | 255 | Yes |
price | Float | - | Yes |
discountedPrice | Float | - | No |
onSale | Boolean | - | No |
featured | Boolean | - | No |
imageUrl | String | 2048 | No |
category | String | 255 | No |
tags | String[] | - | No |
description | String | 10000 | No |
additionalInfo | String | 10000 | No |
galleryUrls | String[] | - | No |
orders
Customer orders collection.| Attribute | Type | Size | Required |
|---|---|---|---|
orderId | String | 100 | Yes |
customerId | String | 50 | Yes |
customerName | String | 200 | No |
customerEmail | String | 200 | Yes |
items | String | 10000 | Yes |
subtotal | Float | - | Yes |
discount | Float | - | No |
couponCode | String | 50 | No |
total | Float | - | Yes |
status | String | 20 | Yes |
paypalOrderId | String | 100 | No |
placed, processing, completed, cancelled
shortlinks
URL shortener collection.| Attribute | Type | Size | Required |
|---|---|---|---|
customPath | String | 100 | Yes |
destinationUrl | URL | - | Yes |
previewImageUrl | URL | - | No |
title | String | 255 | No |
description | String | 500 | No |
isActive | Boolean | - | Yes |
clickCount | Integer | - | No |
createdAt | Datetime | - | Yes |
customPath_idx(unique) oncustomPath
Category Collections
Forblog_categories, project_categories, shop_categories:
| Attribute | Type | Size | Required |
|---|---|---|---|
name | String | 100 | Yes |
color | String | 20 | No |
order | Integer | - | No |
Settings Collections
header_section
| Attribute | Type | Size | Required |
|---|---|---|---|
name | String | 100 | Yes |
roles | String[] | 100 | No |
description | String | 1000 | No |
nameFont | String | 200 | No |
rolesFont | String | 200 | No |
descriptionFont | String | 200 | No |
custom_fonts
| Attribute | Type | Size | Required |
|---|---|---|---|
name | String | 100 | Yes |
fileId | String | 100 | Yes |
fileUrl | String | 2000 | Yes |