این صفحه واژگان پایه را تعریف میکند — قبل از Controller، Service و Page. در promptهای AI هم همین مرزها را رعایت کنید.
API
API راه استاندارد تبادل داده بین frontend و backend است. هر endpoint یک URL و متد HTTP دارد. پاسخ و body معمولاً JSON است.
jsonپازل API
{
"id": "ord-001",
"total": 150000,
"status": "PAID",
"customerId": "user-42"
}متدهای HTTP
- GET — خواندن / لیست
- POST — ایجاد
- PUT / PATCH — بهروزرسانی
- DELETE — حذف
Backend و Frontend
Backend (api/) روی سرور: business logic، DB، validation. Frontend (panel/) در مرورگر: UI با React. کاربر backend را مستقیم نمیبیند.
جریان درخواست
- 1کاربر /orders را در panel باز میکند
- 2Frontend درخواست GET /{slug}/orders میفرستد
- 3Controller → Service → JSON
- 4Frontend با hook (مثلاً useListOrders) render میکند
در Puzzle، hook API از Controller generate میشود — برای CRUD معمولی fetch/axios دستی ننویسید.
DB، Migration، Auth
- Database — با Model و services.database: true؛ SQL دستی ندارید
- Migration — تغییر schema از Model؛ فایل migration در repo شما نیست
- Seeder — داده اولیه (ردیف)، نه schema
- Auth — معمولاً app IAM؛ RequireAuth از @workspace/iam