Hình hài của một dự án
Mở một dự án điển hình ra, danh sách thư mục có thể trông như một mớ hỗn độn. Nhưng không phải vậy — hầu hết các dự án đều tuân theo một khuôn mẫu dễ nhận ra. Đây là một ứng dụng web đã được đơn giản hóa:
my-app/
├── package.json # dependencies + run commands (above)
├── package-lock.json # the lockfile — exact versions
├── .env # local secrets/config — NOT shared
├── .gitignore # files Git should ignore (like .env)
├── README.md # what this project is, how to run it
├── public/ # static files served as-is (images, icons)
└── src/ # your actual code lives here
├── components/ # reusable frontend pieces (a button, a card)
├── pages/ (or app/) # the screens/routes users navigate to
├── lib/ # shared helpers and backend logic
└── styles/ # CSS
Bạn không cần phải học thuộc lòng cái này — chỉ cần nhận ra nó, để khi AI nói "tôi sẽ thêm cái này vào src/lib," bạn biết đại khái nó nằm ở đâu và vì sao. Một vài quy ước quan trọng cần nắm:
src/chứa mã lệnh mà bạn viết. Sự lộn xộn ở cấp cao nhất chủ yếu là cấu hình.- Các tệp cấu hình ở gốc (
package.json, các dotfile — tệp bắt đầu bằng dấu chấm) cấu hình cho các công cụ, không phải hành vi của ứng dụng bạn. .gitignoreliệt kê những tệp không nên được lưu vào hệ thống quản lý phiên bản — tệp.envcủa bạn thuộc về đây, và đó chính xác là cách để giữ bí mật ngoài một repo được chia sẻ.