Dev

Config Converter

Paste any config — .env, JSON, YAML, TOML, INI, properties, compose or ConfigMap — and get it back in any other format, with the quoting handled.

Paste a config to begin
Input —
or drop a file here
Output —
The converted config will appear here
Settings Nest on __ · typed values · quote when needed
How It Works

How to Use Config Converter in 3 Steps

1

Paste the source

Drop a file or paste text. The format is detected from the shape — JSON braces, YAML keys, TOML tables, KEY=value lines, export KEY=, [sections], compose environment: or a ConfigMap data: block. Override it with the From menu if the guess is wrong.

2

Pick the target

Flat formats (.env, export, properties, compose, ConfigMap) and nested formats (JSON, YAML, TOML, INI) interconvert using the key rule in Settings — DB__HOST becomes { "DB": { "HOST": … } } and back. Values are typed on the way to JSON / YAML / TOML and quoted on the way to .env only when they contain spaces, #, $ or quotes.

3

Check and download

Duplicate keys, keys that are invalid for the target (a dash in an env name), values that needed quoting and anything that looks like a secret are listed under the output. Download with the right extension and file name (.env, configmap.yaml, …).

FAQ

Config Converter — Frequently Asked Questions

Does it handle multi-line values and comments?

Yes. Quoted multi-line .env values (double quotes spanning lines, or \\n escapes) are read correctly; comments (#, ; in INI, ! in properties) are dropped from the output because most target formats have no place for them. Quoted values are unquoted on read and re-quoted only when the target needs it.

What is the __ rule?

Flat formats cannot nest, so a convention is needed: DATABASE__HOST=db ↔ database: { host: db } is the double-underscore rule used by docker-compose overrides, ASP.NET and many config libraries. Choose dots if your keys look like spring.datasource.url, or “Never nest” to keep everything flat (nested input is then flattened with the same separator).

How are types decided?

When converting to JSON / YAML / TOML, values that are exactly true/false, integers, decimals or null become those types; everything else stays a string. Untick “Type values” to keep every value a string — safer for ZIP codes, version numbers and IDs with leading zeros.

Kubernetes Secret or ConfigMap?

ConfigMap output writes values as plain text under data:. Tick “Base64-encode values” to emit a kind: Secret with base64 values under data: — which is encoding, not encryption; keep real secrets out of pasted text and use a secrets manager.

Are my secrets safe here?

The conversion runs entirely in your browser; nothing is sent anywhere. The “looks like a secret” warning exists because people paste real credentials into online tools — this one never transmits them, but your clipboard, screen and browser history still exist.

Is my code uploaded anywhere?

No. Formatting and minifying run in JavaScript inside your browser tab. The formatter libraries are downloaded once from a CDN; your code never leaves the page.