11
BÀI 11 — apps/web/app/page.tsx: React + Next.js + Socket.IO client Đã đọc
BÀI 11 — apps/web/app/page.tsx: React + Next.js + Socket.IO client
https://share.evernote.com/note/c3f5f61d-831c-bb59-3790-5568bf5d701fLập trình
BÀI 11 — apps/web/app/page.tsx: React + Next.js + Socket.IO client
https://share.evernote.com/note/c3f5f61d-831c-bb59-3790-5568bf5d701fBÀI 12 — @chess/shared-types: Dùng chung TypeScript type giữa Web và API
https://share.evernote.com/note/ba0254c4-458f-91db-4676-ad62f4de07abBÀI 13 — packages/chess-core: Đưa luật cờ vua vào trong code
https://share.evernote.com/note/c6939bba-605a-35ad-6ce1-ed1ba4499269BÀI 14 — packages/database: Prisma + PostgreSQL
https://lite.evernote.com/note/632cb63d-2948-ad26-5622-748019229d16BÀI 15 — Prisma Client: TypeScript ghi dữ liệu thật vào PostgreSQL
https://lite.evernote.com/note/464159ff-f467-7c63-a36d-dc435fc47a1cBÀI 16 — Đưa Prisma vào NestJS bằng Dependency Injection
https://share.evernote.com/note/c8f55c50-1f25-1c85-e656-be439d85e4e9BÀI 17 — Xây UsersModule: Controller → Service → Prisma → PostgreSQL
https://lite.evernote.com/note/57cd591d-3e28-7046-3102-796c752eab53BÀI 18 — Xử lý lỗi API đúng chuẩn: 400, 404, 409, 500
https://lite.evernote.com/note/630d1171-d6e5-ce16-a5c8-67f5ebd8f017BÀI 19 — Hoàn thiện CRUD: PATCH và DELETE User
https://share.evernote.com/note/762f4312-015c-2449-f355-7c3786ea6b5eBÀI 20 — Xây ClassroomsModule: Giáo viên tạo lớp học thật
https://share.evernote.com/note/58b1e460-04ff-8028-df39-58610f2aac5c