Cẩm Nang Vibe Coding
73 khái niệm — tra cứu nhanh, hiểu đúng lớp công nghệ
- Khái niệmAPI
Cách các phần mềm giao tiếp với nhau. REST API cơ bản dùng GET (lấy dữ liệu), POST (tạo mới), PUT (thay thế/cập nhật), PATCH (cập nhật một phần), DELETE (xóa) — tương ứng CRUD.
- Khái niệmAPI Key và Secret
Khóa cho phép app truy cập dịch vụ khác (OpenAI, Google Maps, email service...).
- Khái niệmAuthentication & AuthorizationAI
Authentication xác định AI đang đăng nhập (email+mật khẩu, Google Login, OTP, Social Login...). Authorization xác định người đó được phép làm gì (Admin/Nhân viên/Khách). Hiện có nhiều dịch vụ quản lý sẵn (Auth-as-a-Service) giúp triển khai nhanh mà không tự xây backend auth.
- Khái niệmBackend
Phần xử lý phía server: kiểm tra dữ liệu, xử lý nghiệp vụ, phân quyền, đọc/ghi database, gửi email, xử lý file, gọi AI/API khác.
- Khái niệmBackup
Bản sao dữ liệu để phục hồi sau sự cố — quan trọng nhất là PostgreSQL, file upload, cấu hình cần thiết.
- Khái niệmBranch và Pull Request
Branch: nhánh riêng để phát triển tính năng (main, feature-login...). Pull Request: đề nghị đưa thay đổi từ branch vào branch chính.
- Khái niệmBuild
Quá trình biến source code thành dạng sẵn sàng chạy/deploy (vd: next build → Production build).
- Khái niệmCI/CD
Tự động hóa quá trình kiểm tra và triển khai: Push GitHub → Build → Test → Deploy.
- Khái niệmCORS
Quy tắc kiểm soát website/domain nào được phép gọi tài nguyên từ server khác.
- Hạ tầngCPU, RAM, Disk
CPU: sức mạnh xử lý. RAM: bộ nhớ làm việc tạm thời. Disk: dung lượng lưu lâu dài.
- Khái niệmCSS
Ngôn ngữ quyết định giao diện trông như thế nào: màu, kích thước, khoảng cách, bố cục, responsive.
- Khái niệmCache
Lưu tạm kết quả đã có để lần sau trả nhanh hơn (Request → Cache → Response thay vì → Database → xử lý).
- Hạ tầngCaddy
Web server/reverse proxy khác, điểm mạnh là tự động cấu hình HTTPS rất đơn giản.
- Khái niệmClient và Server
Client: thiết bị/phần mềm gửi yêu cầu (trình duyệt). Server: máy/phần mềm nhận và xử lý yêu cầu.
- Khái niệmCron JobAI
Công việc tự động chạy theo lịch định kỳ, giống 'đồng hồ hẹn giờ của server'.
- ChungCác thuật ngữ trong n8nAI
Tập hợp các khái niệm cốt lõi (Workflow, Node, Trigger, Expression, Credentials...) cấu thành nên một quy trình tự động hóa trong n8n.
- DatabaseDatabaseAI
Nơi lưu dữ liệu lâu dài. Khái niệm nền tảng: Table (giống sheet Excel), Row (bản ghi), Column (trường dữ liệu), Primary Key (mã duy nhất), Foreign Key (liên kết giữa bảng), Index (tìm kiếm nhanh), Constraint (quy tắc bảo vệ dữ liệu). Phân loại chính: 2 nhóm lớn là SQL (Relational: PostgreSQL, MySQL, SQL Server) và NoSQL (Document: MongoDB, Key-Value: Redis, Wide-column: Cassandra, Graph: Neo4j). ACID là bộ 4 tính chất đảm bảo độ tin cậy của transaction: Atomicity (toàn vẹn – tất cả hoặc không có gì), Consistency (nhất quán – dữ liệu luôn hợp lệ trước/sau transaction), Isolation (độc lập – các transaction không can thiệp lẫn nhau), Durability (bền vững – dữ liệu đã commit không mất khi sự cố).
- Khái niệmDatabase MigrationAI
Cơ chế quản lý thay đổi cấu trúc database (schema) theo phiên bản, cho phép áp dụng, rollback và theo dõi lịch sử các thay đổi (tạo bảng, thêm cột, index, constraint, seed data) một cách có kiểm soát, lặp lại được và an toàn cho production.
- Khái niệmDependency
Thư viện mà app phụ thuộc vào (React, Prisma, Zod, Tailwind...).
- Khái niệmDeployAI
Quá trình đưa ứng dụng từ môi trường phát triển lên môi trường sản xuất hoặc staging để người dùng có thể truy cập.
- Khái niệmDevelopment / Staging / Production
Development: môi trường đang code. Staging: môi trường thử gần giống thật. Production: môi trường người dùng thật đang dùng.
- FrameworkDjango
Framework web lớn, đầy đủ của Python — có sẵn ORM, Authentication, Admin, Routing, Form, Security.
- Hạ tầngDocker
Đóng gói app cùng môi trường chạy thành container. Dockerfile = công thức tạo image; Image = khuôn mẫu; Container = instance đang chạy; Volume = dữ liệu bền vững; Network = mạng giữa container.
- Hạ tầngDocker Compose
Quản lý nhiều container trong cùng một hệ thống (App, PostgreSQL, Redis, Nginx...) được mô tả trong file compose.yaml.
- Hạ tầngDocker Network
Cho phép container giao tiếp qua network nội bộ (vd: Next.js → postgres:5432, 'postgres' là tên service, không phải IP).
- Hạ tầngDomain và DNS
Domain: tên dễ nhớ của website (app.example.vn). DNS: hệ thống trỏ domain đến IP hoặc dịch vụ khác.
- Khái niệmEnvironment Variables (.env)
Chứa cấu hình thay đổi giữa các môi trường và các bí mật (DATABASE_URL, API_KEY, AUTH_SECRET).
- FrameworkFastAPIAI
FastAPI là framework Python hiện đại, hiệu năng cao để xây dựng API RESTful, dựa trên Starlette (cho async) và Pydantic (cho validation dữ liệu), tự động sinh tài liệu OpenAPI và giao diện Swagger UI.
- Hạ tầngFile Storage / Object StorageAI
Dịch vụ lưu trữ file dạng đối tượng (object) — mỗi file là một 'object' có ID duy nhất, metadata và dữ liệu nhị phân. Khác với file system truyền thống, object storage không có thư mục thực sự, dùng key (đường dẫn) để tổ chức, mở rộng gần như không giới hạn.
- Khái niệmFrontend
Phần người dùng nhìn thấy và tương tác trực tiếp: trang đăng nhập, dashboard, danh sách, form, bộ lọc, biểu đồ.
- Khái niệmFull StackAI
Cách xây dựng ứng dụng bao gồm cả phần giao diện người dùng (Frontend) và phần xử lý logic, dữ liệu phía máy chủ (Backend) trong cùng một dự án hoặc bởi một lập trình viên.
- Khái niệmGit
Quản lý lịch sử thay đổi source code: Repository, Commit, Branch, Merge, Diff, Revert.
- Hạ tầngGitHub
Nơi lưu Git repository trên Internet. Git = công nghệ quản lý phiên bản, GitHub = dịch vụ lưu và cộng tác trên Git.
- Ngôn ngữGo
Ngôn ngữ lập trình do Google phát triển, chạy nhanh, nhẹ RAM, build ra file thực thi.
- Khái niệmHTML
Ngôn ngữ đánh dấu tạo cấu trúc nội dung trang web (tiêu đề, đoạn văn, form, nút, bảng, ảnh).
- Khái niệmHTTP Status Code
Mã trạng thái phản hồi HTTP: 200 thành công, 201 tạo thành công, 400 request không hợp lệ, 401 chưa xác thực, 403 không có quyền, 404 không tìm thấy, 500 lỗi server.
- Khái niệmI/OAI
Viết tắt của Input/Output — quá trình trao đổi dữ liệu giữa chương trình và thế giới bên ngoài (bàn phím, màn hình, ổ cứng, mạng, v.v.).
- Khái niệmIP và Port
IP: địa chỉ máy trên mạng. Port: cửa của một dịch vụ trên máy đó (22 SSH, 80 HTTP, 443 HTTPS, 5432 PostgreSQL, 3000 Next.js dev).
- Khái niệmJSON
Định dạng dữ liệu cực phổ biến khi API giao tiếp — không phải database, chỉ là định dạng biểu diễn dữ liệu.
- Ngôn ngữJavaScript
Ngôn ngữ lập trình quan trọng nhất của web. Ban đầu chỉ chạy trong trình duyệt, nhờ Node.js nay chạy được cả ở server.
- Khái niệmLog
Nhật ký hoạt động của app (Login success, Database connection failed, API 500...).
- Khái niệmModalAI
Một cửa sổ con nổi lên trên giao diện chính, yêu cầu người dùng tương tác trước khi quay lại trang.
- Khái niệmMonitoring
Theo dõi sức khỏe hệ thống: CPU, RAM, Disk, Network, Container, Database, Uptime.
- Khái niệmMonolith và Microservice
Monolith: nhiều chức năng nằm trong một ứng dụng. Microservice: chia hệ thống thành nhiều service độc lập.
- FrameworkNext.js
Framework xây ứng dụng web dựa trên React, có thể làm cả Frontend lẫn Backend trong cùng một app.
- Hạ tầngNginx
Web server/reverse proxy: có thể làm reverse proxy, SSL termination, chuyển domain đến app, serve static file, load balancing.
- RuntimeNode.jsAI
Môi trường chạy JavaScript/TypeScript phía server, xây dựng trên engine V8 của Chrome, dùng mô hình event-driven, non-blocking I/O để xử lý nhiều kết nối đồng thời với ít thread.
- ORMORM
Lớp trung gian giúp code làm việc với database mà không phải viết SQL cho mọi thao tác (Application → ORM → PostgreSQL).
- Khái niệmPackage Manager
Công cụ cài và quản lý thư viện. JS/TS: npm, pnpm, yarn. Python: pip, uv. package.json mô tả tên project, script, dependency, version; node_modules chứa package đã cài (không commit lên GitHub).
- DatabasePostgreSQLAI
Hệ quản trị cơ sở dữ liệu quan hệ đối tượng (ORDBMS) mã nguồn mở, mạnh mẽ, hỗ trợ ACID, mở rộng cao, hỗ trợ JSON, full-text search, GIS (PostGIS), và nhiều kiểu dữ liệu tùy chỉnh.
- ORMPrismaAI
Prisma là ORM (Object-Relational Mapping) mã nguồn mở cho Node.js và TypeScript, giúp tương tác với cơ sở dữ liệu quan hệ (PostgreSQL, MySQL, SQLite, SQL Server, MongoDB) thông qua một schema khai báo. Nó tự động sinh ra Prisma Client – một thư viện type-safe để truy vấn dữ liệu, đồng thời cung cấp Prisma Migrate để quản lý migration và Prisma Studio để duyệt dữ liệu trực quan.
- Ngôn ngữPython
Ngôn ngữ lập trình nổi tiếng vì dễ đọc và hệ sinh thái mạnh.
- Khái niệmQueue và Worker
Queue là hàng đợi công việc; Worker là tiến trình lấy việc trong queue ra xử lý (Backend → Queue → Worker → Hoàn thành).
- Khái niệmRate Limit
Giới hạn số request trong một khoảng thời gian.
- LibraryReactAI
Thư viện JavaScript dùng để xây giao diện, chia UI thành các khối nhỏ gọi là component (vd: Header, Sidebar, DataTable). Ví dụ: `function Button({label}) { return <button>{label}</button>; }`
- DatabaseRedisAI
Kho dữ liệu dạng key-value chạy trong RAM, hỗ trợ nhiều cấu trúc dữ liệu như string, hash, list, set, sorted set.
- Hạ tầngReverse Proxy
Đứng trước các app và chuyển request đến đúng service (vd: app1.example.vn → localhost:3001).
- Ngôn ngữRust
Ngôn ngữ chú trọng hiệu năng và an toàn bộ nhớ, phù hợp phần mềm hệ thống.
- Khái niệmSQL
Ngôn ngữ dùng để làm việc với database quan hệ: SELECT (lấy), INSERT (thêm), UPDATE (sửa), DELETE (xóa), JOIN (nối bảng).
- Hạ tầngSSHAI
Giao thức mạng cho phép truy cập và điều khiển máy chủ từ xa qua kênh mã hóa an toàn.
- Khái niệmSSL / TLS / HTTPS
HTTPS mã hóa dữ liệu giữa trình duyệt và server bằng TLS, khác với HTTP không mã hóa đầy đủ.
- Khái niệmSSR, CSR và Server Component
CSR: trang dựng nhiều ở trình duyệt. SSR: server dựng HTML trước khi gửi về. React Server Component: component chạy phía server trong kiến trúc React/Next.js hiện đại.
- Khái niệmServer Action
Trong Next.js, cho phép một thao tác từ giao diện chạy code trực tiếp phía server mà không cần tự tạo REST API riêng.
- Khái niệmSession, Cookie, JWT
Cookie: dữ liệu nhỏ trình duyệt lưu lại. Session: thông tin phiên đăng nhập. JWT: token chứa thông tin xác thực có chữ ký.
- Khái niệmStack
Tập hợp công nghệ dùng chung để xây app.
- LibraryTailwind CSS
Hệ thống class CSS tiện dụng (utility-first), viết style ngay trong class thay vì file CSS riêng.
- Ngôn ngữTypeScript
JavaScript có thêm hệ thống kiểm tra kiểu dữ liệu (type checking).
- Hạ tầngVPSAI
Máy chủ ảo riêng, chạy 24/7, có CPU, RAM, ổ SSD, địa chỉ IP và hệ điều hành (thường là Linux) hoàn toàn riêng cho bạn.
- Khái niệmValidation
Kiểm tra dữ liệu có hợp lệ không (email đúng định dạng, ngày hết hạn không nhỏ hơn ngày cấp, không để trống, không trùng mã).
- Hạ tầngVolume
Giữ dữ liệu lâu dài cho container, vì container có thể bị xóa và tạo lại (đặc biệt quan trọng với PostgreSQL container).
- Khái niệmWebSocket
Giữ kết nối hai chiều liên tục giữa client và server.
- Khái niệmWebhookAI
Cách một hệ thống chủ động báo cho hệ thống khác khi có sự kiện (vd: Stripe gọi webhook sau khi thanh toán thành công). Khác với API thông thường, webhook là callback HTTP do server gửi đi; N8n là nền tảng tự động hóa workflow thường dùng webhook làm trigger để kích hoạt các luồng xử lý.
- Libraryshadcn/uiAI
Bộ component UI không có runtime (headless) được xây dựng trên Radix UI + Tailwind CSS. Code component được copy thẳng vào repo (không cài package), cho phép tùy biến hoàn toàn mọi dòng CSS/JS.