awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
dmno-dev avatar

dmno-dev/varlock

0
View on GitHub↗
4,923 stars·142 forks·TypeScript·MIT·1 viewvarlock.dev↗

Varlock

Varlock is an environment variable toolkit built around a committed schema that lives in plain env files. Types, validation rules, descriptions and sensitivity flags are written as JSDoc-style decorator comments, and loaded values are checked and coerced against that schema before the application runs. It also generates TypeScript types from the schema, and it keeps secret values away from AI coding agents: agents can see variable names, types and rules, but not the values behind them.

What sets it apart is the combination of secret protection and backend integration. Sensitive values are scanned for in build output, source maps and server responses, and they are redacted from build and runtime logs. A plugin system resolves secrets at load time from password managers, cloud secret services, vaults and Kubernetes, including AWS Secrets Manager, Azure Key Vault, HashiCorp Vault, Bitwarden, 1Password, Doppler, Infisical, KeePass and others. Each backend supports several authentication methods for local, server and pipeline use, such as OIDC federation, service accounts and device keys. Bulk loading, caching of fetched secrets and handling of missing values are also covered.

Integrations for Vite, Next.js, Nuxt and Cloudflare Workers replace default .env loading with schema-driven validation, inline public values at build time and keep sensitive ones out of shipped code. A standalone binary CLI runs commands with the resolved variables injected and does not need a separate language runtime. A minimal container image is provided for multi-architecture use. An editor extension adds syntax highlighting, autocomplete, hover details and inline validation for schema files, and an Effect integration generates typed config modules.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Environment Variable Validation - Defines types, rules and descriptions for environment variables in a committed schema, then validates loaded values and coerces them to the right types.
  • Env Schema Type Generators - Generates type definitions from the environment schema so application code reads variables with autocomplete, type checking and built-in documentation.
  • AI Agent Secret Redaction - Hides secret values from AI coding agents while exposing variable names, types and rules, and blocks sensitive values from leaking into logs, bundles and responses.
  • External Secret Resolution - Resolves secret values at load time from password managers, cloud secret stores, and vaults through declarative references and plugins.
  • Plugin-Driven Secret Backends - Fetches secrets at load time through installable plugins that evaluate function-call syntax, letting each backend add its own decorators and functions.
  • Secret Leak Prevention - Varlock detects sensitive values in build output and runtime responses, blocks them from being exposed in client bundles or served code, and redacts them from build-time logs.
  • Secret Management Integrations - Pulls secrets at load time from password managers, cloud secret services, vaults and Kubernetes through plugins with multiple authentication methods.
  • Secret Vault Integrations - Offers a plugin system that fetches secrets at load time from password managers, cloud secret stores, vaults and Kubernetes.
  • Comment-Based Schemas - Defines variable types, validation rules and sensitivity flags as JSDoc-style decorator comments inside plain env files, parsed into one schema.
  • Decorator-Based Validation - Attaches types, requirements and validation rules to variables via JSDoc-style decorator comments in env files, backed by a parser and open specification.
  • Framework Environment Loader Integrations - Provides integrations for Vite, Next.js, Nuxt, Cloudflare Workers and containers that load and validate environment variables from one schema.
  • Declarative Environment Schemas - Describes each variable's name, type, rules and description in a single schema file that serves as the shared source of truth.
  • Build-Time Variable Injection - Replaces non-sensitive environment variable references with resolved literal values at build time, producing bundles with no runtime lookup.
  • Dotenv Schema Language Tooling - Provides an editor extension and parser for decorator comments in env files with highlighting, autocomplete, hover details and inline validation.
  • Environment-Injected Command Runners - Runs any command from the command line with validated, resolved environment variables injected so the program starts fully configured.
  • Standalone CLI Runtimes - Ships a self-contained binary CLI that validates the schema, resolves values and launches child processes with variables injected, needing no separate runtime.
  • Secret Leak Detection - Scans compiled bundles, source maps and server responses for known sensitive values, blocking or redacting matches before they can be published.
  • Environment File Loaders - Combines a committed schema file, per-environment value files, and shell variables in a fixed override order into one resolved configuration.
  • Framework Package Integration - Provides drop-in packages for common web frameworks and build tools so validated, protected environment variables work inside those projects.
  • Cloud Secret Managers - Retrieves secret values from cloud secret managers into config items at resolution time, using the item key as the default secret name.
  • Function-Call Value Resolution - Resolves unquoted function-call syntax in env values to decrypt data or fetch from external sources without application code.
  • Response Leak Blocking - Varlock inspects outgoing responses and blocks sensitive environment values from being sent to clients by accident.
  • Sensitive Variable Redaction - Masks sensitive environment variable values in output printed during the build so secrets are not exposed in build logs.
  • Client Bundle Exclusion - Keeps sensitive variables out of inlined JavaScript, warns on client-side references at build time, and throws if native code reads them.
  • Type Generation - Generates TypeScript types from the environment schema for autocomplete, type checking and inline documentation when reading variables.
  • Type-Safe Schema Validators - Checks loaded variables against declared types and rules, converts them to expected types, and provides type safety before application code runs.
  • Next.js Integrations - Replaces Next.js's built-in env-file loader with a small config plugin, adding schema validation and leak protection on Next.js 14+ with Webpack or Turbopack.
  • Vite Integrations - Ships a Vite plugin that replaces default env file loading with schema-driven loading for plain Vite and framework-based projects.
  • Plugin Architectures - Adds new decorators, functions and data types through installable plugins, so each secret backend integrates without touching core code.
  • Nuxt Integrations - Ships a Nuxt module hooking into Vite config and the server build so env files load and validate consistently across dev, build, and production.
  • Environment Loading Plugins - Wraps Vite, Next.js, Nuxt and Cloudflare tooling to load and validate variables before builds, inline public values and keep secrets out of output.

Star history

Star history chart for dmno-dev/varlockStar history chart for dmno-dev/varlock

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does dmno-dev/varlock do?

Varlock is an environment variable toolkit built around a committed schema that lives in plain env files. Types, validation rules, descriptions and sensitivity flags are written as JSDoc-style decorator comments, and loaded values are checked and coerced against that schema before the application runs. It also generates TypeScript types from the schema, and it keeps secret values away from AI coding agents: agents can see variable names, types and rules, but not the values…

What are the main features of dmno-dev/varlock?

The main features of dmno-dev/varlock are: Environment Variable Validation, Env Schema Type Generators, AI Agent Secret Redaction, External Secret Resolution, Plugin-Driven Secret Backends, Secret Leak Prevention, Secret Management Integrations, Secret Vault Integrations.

Which projects share features with dmno-dev/varlock?

Projects with overlapping indexed features include: twpayne/chezmoi — chezmoi is a command-line utility designed to manage and synchronize system configuration files across multiple… t3-oss/t3-env — t3-env is a type-safe environment manager and schema validator for TypeScript. It maps environment variables to static… jenkins-x/jx — jx is a GitOps delivery platform and Kubernetes CI/CD orchestrator designed to automate the building and deployment of… hashicorp/consul-template — Consul Template is a configuration renderer and dynamic configuration manager that generates files by populating… external-secrets/external-secrets — External Secrets Operator reads information from a third-party service like AWS Secrets Manager and automatically… dynaconf/dynaconf — Dynaconf is a configuration management library for Python applications that provides a unified system for loading,…

Projects sharing features with Varlock

These projects share indexed features with Varlock. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • twpayne/chezmoitwpayne avatar

    twpayne/chezmoi

    22,201View on GitHub↗

    chezmoi is a command-line utility designed to manage and synchronize system configuration files across multiple machines. It uses a local Git repository as the single source of truth, allowing users to track, version, and distribute dotfiles while maintaining a consistent state across diverse operating systems and hardware architectures. The project distinguishes itself through a declarative reconciliation model that computes the difference between the current filesystem and the desired state defined in the repository. It features a robust templating engine that processes configuration files

    Goconfigurationdotfiledotfile-management
    View on GitHub↗22,201
  • t3-oss/t3-envt3-oss avatar

    t3-oss/t3-env

    3,782View on GitHub↗

    t3-env is a type-safe environment manager and schema validator for TypeScript. It maps environment variables to static types to provide autocompletion and prevents configuration errors through a system that verifies required variables are present and correctly formatted before an application starts. The project enforces strict variable scope to isolate server-side secrets from the client browser, preventing sensitive data from leaking into client-side bundles. It also provides configuration presets tailored to the naming conventions of specific hosting and deployment platforms. The library i

    TypeScript
    View on GitHub↗3,782
  • jenkins-x/jxjenkins-x avatar

    jenkins-x/jx

    4,692View on GitHub↗

    jx is a GitOps delivery platform and Kubernetes CI/CD orchestrator designed to automate the building and deployment of applications. It functions as a cloud native pipeline manager that executes container-based build and deployment sequences using a catalog of reusable tasks. The project distinguishes itself through the automated orchestration of preview environments, which are created and destroyed based on pull request activity to enable validation before merging. It employs a GitOps-based state synchronization model to maintain the desired state of clusters by polling git repositories and

    Goacceleratorcicdcontinuous-delivery
    View on GitHub↗4,692
  • hashicorp/consul-templatehashicorp avatar

    hashicorp/consul-template

    4,817View on GitHub↗

    Consul Template is a configuration renderer and dynamic configuration manager that generates files by populating templates with data from Consul and Vault. It functions as a service discovery template engine and secrets management integrator, transforming cluster catalog and health data into formatted configuration files. The tool distinguishes itself by acting as a process supervisor and notifier, capable of executing shell commands or restarting applications automatically after templates are updated. It features a long-polling watcher to monitor remote key-value stores and employs a shared

    Goconsulgolangvault
    View on GitHub↗4,817
Compare all 30 related projects→