21P by xguru 12일전 | ★ favorite | 댓글 2개
  • 기존 .env/.env.example 방식의 한계를 극복해, 협업/AI/보안/타입 안정성을 한 번에 해결하는 차세대 환경 변수 관리 툴
    • .env.schema로 환경 변수 스키마를 한 곳에서 관리, .env.example와 달리 실제와 예시의 불일치 걱정 없음
  • @env-spec 데코레이터 주석을 통해 스키마, 타입, 검증, 예시, 민감도, 외부 비밀 관리 등 다양한 정보를 .env 파일에 선언적으로 추가
    • @required, @type=string, @sensitive, @example
  • 강력한 유효성 검증: 잘못된 설정/미입력 오류를 즉시 명확한 메시지로 안내(런타임 이전에 사전 차단)
  • 스키마 기반 자동 타입 생성으로, 코드 내 환경 변수 접근 시 타입 안전성 및 IDE 인텔리센스 지원
  • 보안: 민감 정보 자동 마스킹(로그/콘솔), 번들된 클라이언트/응답 내 유출 감지
  • 다중 환경 및 오버라이드: 기본값, 환경별 파일, git-ignored 개인값, 프로세스 env 조합 등 복합적인 환경 구성 지원
  • 외부 시크릿 통합: 1Password, exec 등 커맨드 기반 시크릿 동적 로딩, 플러그인·로컬 암호화·팀 vault 곧 지원 예정
  • 언어 무관/런타임 무관: JS/TS 뿐 아니라, varlock run -- python my.py 등 모든 언어·프로세스에 validated env 주입 가능
  • dotenv 완전 대체 가능: dotenv import만 varlock으로 바꿔도 즉시 유효성 검사, 타입 자동 생성, 보안 강화, 다중 환경/시크릿 통합 등 다양한 기능 사용 가능

이거면 .gitignore에 .env.schema가 포함돼야 하는건가요?

아.. .env에는 정보를 두고 .env.schema가 읽어들이는 방식이군요