Transform JSON with JavaScript recipes and scripts — with an AI assistant to draft transformations
Your script is a JavaScript function body (strict mode): you can write any JS statements. `data` is a deep-cloned snapshot of the current table scope. Click Preview to test; click Apply to write the result back to the table scope. Return a JSON-serializable value (object/array/string/number/boolean/null). Very large outputs may be truncated in Preview.
Deep-clone any JSON value (uses structuredClone when available). Keep only selected keys from an object: `ctx.pick(obj, ["a","b"])`. Remove keys from an object: `ctx.omit(obj, ["password","token"])`. Flatten nested objects to dotted keys: `ctx.flatten(obj, ".")`. Build a nested object from dotted keys: `ctx.unflatten(flat, ".")`. Note: `unflatten` returns plain objects; if you need arrays, write a custom converter.
Click the AI icon in the Script panel to open the assistant. Describe your goal (e.g. remove empty values, convert key case, keep only a few fields). Insert the draft script, then Preview/Apply — your data is processed locally in your browser. Privacy: AI drafts use DeepSeek and send your prompt + current script. Avoid pasting secrets.
If Preview says “returned undefined”, make sure the script ends with `return ...`. If Preview says “not serializable”, remove circular references / functions / BigInt values. To transform the whole document, select the Root node first, then run the transform.
Preview/Apply runs in your browser on your data. The AI assistant can draft scripts via DeepSeek (prompt + current script). Avoid pasting secrets or running untrusted code.