๐ ุงูู ุดุฑูุน 3: ุชุทุจูู ุฅุฏุงุฑุฉ ู ูุงู โ Laravel API + React
GLM-5.1 Evaluation | Full-Stack Task Manager | 20+ ู ูู
Laravel 11
React + TypeScript
Sanctum Auth
Vite
Optimistic UI
Dark Mode
20+
ู ูู
6
API Endpoints
5
Unit Tests
โ
ู ูุชู ู
๐๏ธ ุงูุจููุฉ ุงูู ุนู ุงุฑูุฉ
๐ฑ React + TS
Vite Dev Server
โ
๐ Axios + CORS
withCredentials
โ
๐ Sanctum
SPA Auth
โ
โก Laravel API
Resources + Policies
โ
๐๏ธ MySQL
Eloquent ORM
โ๏ธ Backend โ Laravel
๐จ Frontend โ React
๐งช Tests
โ Checklist
๐ ูููู ุงูู Backend
๐ ูููู ุงูู Frontend
๐งช ุงุฎุชุจุงุฑุงุช API โ 5 Test Cases
PHP / PHPUnit
๐ ุชุบุทูุฉ ุงูุงุฎุชุจุงุฑุงุช
โ
GET /api/tasks โ ุนุฑุถ ู ูุงู ุงูู ุณุชุฎุฏู ููุท (assertOk + assertJsonStructure)
โ
POST /api/tasks โ ุฅูุดุงุก ู ูู ุฉ ุจุจูุงูุงุช ุตุญูุญุฉ โ 201 Created
โ
POST /api/tasks โ ุจูุงูุงุช ุฎุงุทุฆุฉ โ 422 Unprocessable Entity
โ
PATCH /api/tasks/{id}/toggle โ ุชุจุฏูู ุงูุญุงูุฉ pending โ done
โ
DELETE /api/tasks/{id} โ ุญุฐู ู ูู ุฉ propres + ู ูุน ุญุฐู ู ูู ุฉ ุบุฑูุจุฉ โ 403
โ๏ธ Backend Requirements
โ
API Resources: TaskResource + TaskCollection
โ
Authentication: Laravel Sanctum (SPA tokens)
โ
GET /tasks โ ูุงุฆู ุฉ ู ุน Pagination + Meta
โ
POST /tasks โ ุฅูุดุงุก ู ุน Validation โ 201
โ
PUT /tasks/{id} โ ุชุญุฏูุซ ูุงู ู
โ
DELETE /tasks/{id} โ ุญุฐู ู ุน Authorization
โ
PATCH /tasks/{id}/toggle โ ุชุจุฏูู ุงูุญุงูุฉ
โ
Filtering: ?status=done&priority=high&due=today
โ
Rate Limiting: 60/min auth, 10/min guest
โ
5 Unit Tests ู ุน RefreshDatabase
โ
Form Requests: StoreTaskRequest + UpdateTaskRequest
โ
Scopes: byStatus, byPriority, dueToday, overdue
๐จ Frontend Requirements
โ
Vite + React Setup (ุจุฏูู CRA)
โ
TypeScript โ ุฃููุงุน Task, TaskFormData, TaskFilters
โ
useReducer โ TaskReducer ู ุน 9 action types
โ
Custom Hook: useTasks() โ fetch/create/update/delete/toggle
โ
Optimistic UI โ ADD/UPDATE/DELETE/TOGGLE ู ุน Revert ุนูุฏ ุงููุดู
โ
Error Handling โ Toast notification ุนูุฏ ูุดู ุงูุทูุจ
โ
Dark Mode โ CSS Variables + toggle + localStorage
โ
axios instance โ baseURL + withCredentials + interceptors
โ
CORS configured โ localhost:5173
โ
Loading / Error / Empty states
โ
Pagination controls
โ
Search + Multi-filter UI
โ
Confirm delete pattern
๐ REST Conventions Check
โ
201 Created โ ุนูุฏ POST ูุงุฌุญ
โ
200 OK โ GET, PUT, PATCH, DELETE
โ
422 Unprocessable โ Validation failure
โ
403 Forbidden โ Unauthorized access
โ
JSON response structure โ data + meta + links
โ ุงูุนูุฏุฉ ูุตูุญุฉ GLM