dependencies cho production; devDependencies cho build/test tools (không được bundle vào production) — npm ci trong CI/CD đảm bảo deterministic install từ lock file. npm (Node Package Manager) là công cụ quản lý packages mặc định đi kèm Node.js, với registry hơn 2 triệu packages.
- Phân biệt quan trọng:
npm install reactcài vàodependencies— những gì cần thiết để app chạy trên production.npm install --save-dev jest typescript eslintcài vàodevDependencies— chỉ cần trong quá trình development, không được bundle vào production build.
Ví dụ thực tế: khi deploy lên server, chạy npm install --production sẽ bỏ qua devDependencies, giảm đáng kể dung lượng node_modules.
Pitfall hay gặp: cài nhầm package production vào devDependencies (app crash trên server) hoặc ngược lại (bloat production bundle).