Flatten JSON to a hierarchical EAV table, explore, edit, and convert back to JSON!

Hey Coda!

Just built a system that lets you flatten ANY JSON into a hierarchical EAV table and then convert it back to JSON after editing - all within Coda! Check out the demo video :slight_smile:

Why I built this

Working with complex JSON in Coda has always been challenging. If you’re working with:

  • API responses
  • LLM outputs/inputs (my primary use case)
  • Configuration files
  • Complex data structures

You know the pain of navigating nested JSON structures. You either have to flatten everything into CSV-like tables (losing the hierarchy) or work with JSON as raw text.

How it works

  1. Import: Paste any JSON into the input area and click ā€œFlatten to EAVā€
  2. Explore: The JSON gets transformed into a EAV table where:
  • Each key becomes a node/row
  • Parent-child relationships are preserved
  • Values are stored and editable
  • All relationships (ancestors, descendants, siblings) are tracked
  1. Navigate: Use the Miller Columns view (like Mac Finder’s column view) to click through the hierarchy
  2. Edit: Update any values directly in the table
  3. Export: Click ā€œReconstruct JSONā€ to convert your EAV back to properly formatted JSON

Here’s what makes this special:

  • Full hierarchy preservation - even deeply nested structures
  • Edit any value and see changes reflected in the final JSON
  • Visualize complex structures with Miller columns
  • No depth limits to the hierarchy

Technical Notes

  • The system converts arrays to objects with [n] notation as parents. This keeps the original order while making everything consistently navigable.
  • Since it’s built on Coda tables, there are no practical size limitations beyond Coda’s standard constraints.

Get the doc

You can duplicate this document and start using it right away:

Use cases

I’m currently using this to:

  • Debug complex API responses
  • Create structured prompts for LLMs
  • Store and edit hierarchical data that needs to be accessed by both humans and AI

Would love to hear how YOU might use this!

Happy coding!
Jon

11 Likes

Well done!
This will be very useful to explore json responses, thank you :clap:

3 Likes

Great work, thanks for sharing :folded_hands: :clap:

2 Likes

Nice work!

Personally I would either use some robust JSON tree viewer app (for trees over 10-ish kilobytes or complex hierarchies) or a text editor like Notepad++ or VS Code for anything simple :slight_smile: I can imagine it takes quite some time to ā€˜unfold’ that tree in Coda (creating all those rows and stuff — even in your edited loom it takes a while) so for me it’s not super practical. But it’s a great exercise and a novelty doc for sure!

Make it compile schemas for objects of different types though — maybe even some TS code or Schemas for Coda Packs — and now we’re talking

2 Likes

Yes, agreed @Paul_Danyliuk! I don’t think the real application of this is exploring/editing nodes in JSON.

For me, the real usecase is being able to update my database with an LLM responding in JSON.

TS/schemas is a good rec! I’ll see what I can do :wink:

1 Like

This is really excellent work, @Jon_Dallas. Useful tool, and the doc itself is beautifully built. Well done!

2 Likes