Flatten a language file into an Excel sheet a translator can edit, then load it straight back to JSON — nested key paths, placeholders, escapes and key order all preserved, refill never drifts, hierarchy never collapses. Not generic JSON-to-table — the one step a localization workflow actually needs.
This conversion exists so engineers and translators each use the tool they're comfortable with — without losing anything in between.
The language file front-end and client teams use: key-value pairs, often nested (menu.start.label), with arrays and plural branches (items[0], ICU plural), values carrying placeholders ({name}, %s) and escapes (\n, \uXXXX). Great for engineers — not something to hand-edit row by row.
The interface translators, reviewers and vendors find most natural: one row per string, key and translation side by side, easy to filter, bulk-edit and annotate. The catch: raw Excel flattens the nesting, treats {name} as plain text and auto-corrects \n — and then it won't load back into the codebase.
What this tool guards is exactly that "won't load back": on export it carries nested key paths, array/plural indices, placeholders and escapes faithfully into the sheet; on import it refills by key, restores the hierarchy, and doesn't drift even if rows were reordered. These are the fidelity details only a localization pro thinks to check — and that generic JSON-to-Excel tools mostly ignore.