22 điểm bởi xguru 2025-07-21 | 2 bình luận | Chia sẻ qua WhatsApp
  • Công cụ quản lý biến môi trường thế hệ mới giúp vượt qua những giới hạn của cách làm .env/.env.example truyền thống, giải quyết cùng lúc bài toán cộng tác/AI/bảo mật/độ an toàn kiểu
    • Quản lý schema biến môi trường tập trung tại .env.schema, không còn lo lệch giữa giá trị thực tế và ví dụ như với .env.example
  • Thông qua chú thích decorator @env-spec, có thể khai báo theo kiểu mô tả trong file .env nhiều loại thông tin như schema, kiểu, kiểm tra hợp lệ, ví dụ, độ nhạy cảm, quản lý secret bên ngoài
    • @required, @type=string, @sensitive, @example v.v.
  • Kiểm tra hợp lệ mạnh mẽ: hướng dẫn ngay bằng thông điệp rõ ràng khi cấu hình sai hoặc thiếu giá trị đầu vào, chặn trước từ trước khi runtime bắt đầu
  • Tự động sinh kiểu dựa trên schema, giúp bảo đảm an toàn kiểu và hỗ trợ IDE IntelliSense khi truy cập biến môi trường trong code
  • Bảo mật: tự động che dữ liệu nhạy cảm trong log/console, phát hiện rò rỉ trong client đã bundle hoặc trong phản hồi
  • Nhiều môi trường và override: hỗ trợ cấu hình môi trường phức hợp như giá trị mặc định, file theo từng môi trường, giá trị cá nhân được git-ignore, kết hợp process env
  • Tích hợp secret bên ngoài: nạp động secret dựa trên lệnh như 1Password, exec; sắp hỗ trợ plugin, mã hóa cục bộ và team vault
  • Không phụ thuộc ngôn ngữ/runtime: không chỉ JS/TS mà còn có thể inject validated env vào mọi ngôn ngữ và tiến trình như varlock run -- python my.py
  • Có thể thay thế hoàn toàn dotenv: chỉ cần đổi phần import dotenv sang varlock là có thể dùng ngay kiểm tra hợp lệ, tự động sinh kiểu, tăng cường bảo mật, môi trường đa cấu hình/tích hợp secret và nhiều tính năng khác

2 bình luận

 
onixboox 2025-07-23

Vậy thì .env.schema cũng phải được thêm vào .gitignore đúng không?

 
onixboox 2025-07-23

À... vậy là để thông tin trong .env và dùng .env.schema để đọc nó nhỉ