UUID v5 Generator
Generate deterministic UUIDs from a namespace and a name.
Collapse nested JSON into one flat level of dot-notation or bracket keys.
The JSON Flattener collapses a nested document into a single level, where every key is the full path to a leaf value. Choose dot notation for config loaders or bracket notation for form serialisers.
Flattening rewrites a nested document as one level, where each key is the full path to a leaf value. The object {"user":{"name":"Ada"}} becomes {"user.name":"Ada"}, and an array index becomes part of the path in the same way.
The reason to do it is almost always that something downstream cannot handle nesting. A CSV column header, an environment variable, a spreadsheet import, a search index field, a feature flag store or an analytics event payload all want flat keys. You can choose dot notation, which config loaders prefer, or bracket notation, which is what HTML form serialisers and PHP produce. The JSON Unflattener reverses either form exactly.
Dot notation writes user.address.city; bracket notation writes user[address][city]. Match whatever the consuming system parses.
Swap the dot for an underscore, slash or pipe when your own keys contain dots and the round trip has to stay exact.
Indexes become path segments, so items.0.name is unambiguous and rebuilds as an array rather than an object.
An empty object or array is kept as a leaf value instead of vanishing, which matters when empty and missing mean different things.
The JSON Unflattener reads either notation back, so flattening for storage is not a one-way trip.
Any depth of objects and arrays can be flattened.
Dot notation writes user.address.city; bracket notation writes user[address][city].
Swap the dot for an underscore or a slash when the consuming system needs one.
The result is a single-level JSON object, ready to paste or download.
The index becomes a path segment, so items.0.name in dot notation or items[0][name] in bracket notation. The order is preserved, and the Unflattener rebuilds the array from it.
It is kept as a leaf value, so the empty container survives the round trip instead of vanishing. That matters when a consuming system distinguishes an empty list from a missing one.
Yes. Paste the flat result into the JSON Unflattener with the same notation and you get the original document back, arrays and all.
Dot notation for config files, env vars and most APIs. Bracket notation when the consumer is a PHP or Rails backend, or an HTML form, since that is the form those serialise.
What people who use the JSON Flattener think of it. Reviews come from visitors and are posted as written.
No ratings yet
Yours would be the first.
0 reviews
Newest first
No reviews yet
Be the first to rate the JSON Flattener. It takes half a minute and no account.
Write the first reviewGenerate deterministic UUIDs from a namespace and a name.
Convert between px, rem, em, pt, %, vw and vh with the right context.
Convert between JSON arrays and NDJSON, one compact document per line.
Convert text to Base64 and back, with full Unicode support.
Compute a CRC-32 checksum in hex, decimal and signed form.
Describe a shape and get as many rows of matching JSON as you need.
Estimate how long a password would survive, and see exactly what weakens it.
Generate a production Dockerfile with multi-stage builds and layer caching.