env.dev

.env Converter

Paste a .env file, get the equivalent for Docker Compose, Kubernetes ConfigMap, Vercel CLI, AWS Parameter Store, GitHub Actions secrets, or shell exports. Client-side — your file never leaves the browser.

Last updated:

Client-side only — your .env never leaves the browser

POSIX-compatible export lines you can source from a shell.

Input (.env)

Output

Paste or drop a .env file to convert

How to Use .env Converter

  1. 1Paste the contents of your .env file into the input area, or drag and drop the file.
  2. 2Pick the target format from the buttons on the right (Docker Compose, Kubernetes, Vercel, AWS, GitHub, shell).
  3. 3Review the converted output and click Copy to put it on your clipboard.
  4. 4Run the output as a script (Vercel, AWS, gh CLI), paste into a manifest (Compose, Kubernetes), or commit (GitHub workflow env).

Frequently Asked Questions

Does my .env file leave the browser?

No. Parsing and conversion run entirely client-side. The tool is bundled with the page and never makes a network request with your data.

Why does the Docker Compose output sometimes wrap values in quotes?

YAML parses unquoted "true", "false", "yes", "no", "null", and numeric-looking values as their respective types. The converter wraps those in double quotes so the value stays a string in your config — for example PORT="3000" instead of PORT: 3000.

Why does the Vercel output use printf instead of an interactive prompt?

`vercel env add KEY production` is interactive by default. Piping the value through `printf %s ... | vercel env add` runs unattended so you can paste the whole script and have it complete without manual confirmation per variable.

Are AWS Parameter Store entries created as SecureString?

Yes by default. Edit the lines to switch to `--type String` for non-secret config, or add `--key-id <kms-key-id>` to use a customer-managed KMS key. The default uses the AWS-managed `aws/ssm` key.

Why does the GitHub Actions workflow output not contain my values?

Values belong in repo or org secrets, not in workflow YAML. The workflow snippet maps each variable to ${{ secrets.KEY }} so the actual values stay in GitHub Actions secret storage. Use the gh CLI output to upload them.