That’s not really fair. At the moment we communicate and read json in text, so formatting the text to be human-readable and reasonably arranged often (although not always) matters.
We prefer to call them contextually preferred mountaintop suggestions. To suggest otherwise would be to suggest that our entire industry is built on nothing more than peak comedy.
Peak comedy is a slippery slope. Just be careful to not trigger an avalanche of puns, because that can snowball into something unstoppable, then everything goes downhill fast!
Though - one does not have to do that stuff manually I can imagine some json linter could be configured to do such layout, or someone can just write tool to do that. So idea for this indentation is not bad IMHO.
I don't python, but this scheme missed the point. Keys are vertically aligned, but values are not. Some brackets are vertically aligned, other are not (you have to hunt for the starting square brackets). Bracket take up a whole line each wasting vertical space.
I see, thanks. For me, the point is just "indent successive objects" so it suffices - especially when I'm in a Python mindset and mentally filtering out brackets anyway. But I could understand why you prefer the formatting as you do.
I think having the values aligned make it much quicker to read off entries. I will generally looked at the keys for the first entry, but for subsequent entries I assume the same ordering and just look at the values on the right.
It's a bit trivial, but another subtle effect that I like is that the sub-blocks are not mutually vertically aligned due to being offset by the semi-random length of the key
The point was that the keys and values are all aligned to the same minimal column numbers :) Both `json-mode` `json-reformat` don't seem to do that (and ideally I'd like something that'd work with Clojure/EDN code..)
The arrays are not presented correctly. Each element in the array points to the parent, rather than being grouped together. Ditto for Objects (key/value pairs).
Since JSON is just a simple tree structure without cycles, the JSON "visualization" doesn't buy you much that indented text formatting can't already give you.
Note: when browsing on mobile it isn't obvious that there are examples, the tweet from github isnt obvious that it is an example and the interactive graph doesnt look like one because it zooms into blank space
although I have a desktop and do development there, my interest in a new tool is frequently is sparked by my casual browsing on mobile, there might be (many) others like me
Once I was working with an api that used mongodb in the back. Mongo uses very large integers as ids and I was looking at the json generated through a json viewer extension in the browser. I was having problems because I couldn't find the document I was looking at in the database.
Turns out, the viewer used the browser's JSON.parse and that was converting the id to a number and losing precision since it was so large.
Ever since, I prefer to look at json raw first and then use formatters just to look at the shape, not the data.
I use jq and jless and find that to be more practical than tools like these (not just because of being available in terminal).
When I have large blob of json, I am usually interested in first getting a high level idea of how it is structured (first few levels) then I either need to drill down or filter to find what I need. The combination of jless for interactive exploration and jq to make it easily scriptable/repeatable is quite nice.
I find it natural to reduce the json I start with to a subtree I can make sense of, and thus don't find myself lacking a tool which can provide a visual representation of the complete dataset.
Personally I've never had a problem reading through json, I mean its designed that way to be flat and simple, but this could be brilliant for documentation, even auto updating with some schema changes etc.
Ideally this is something that could run locally but it looks great thank you!
I wish these kind of projects would show up when searching "Online JSON visualization". Current SEO logic means that website like this have pretty much no chance of making it. Would love to be proven wrong though!
I am curious, who needs to visualise these datas? What I am interested in is validation. it's the same as with XML, or any transitional data formats, if I need to fix something I work on a specific set of the data and make sure that it is valid. If it is not I fix it. If I want to visualize data I use it at the endpoints, ie. in Excel or in PowerBI.
this might be a good place to ask: is there any tool out there that can help with json to normalised tables?
I know that many databases can store json, but i often have api's that i would like storing in tables, and feel that 'splitting it out' should be fairly trivial.
Each time i think about making a tool, i am put off by the fact that there is a voice saying 'someone will have done this, in a much better way than you!' :-)
EDIT:
Ignore that, i did that think where i didn't look at the link - this pretty much does what i would need
If you have an MS office suite the power query editor can expand JSON to columns. Doesn't result in a table that is normalized per se, but it is quite a powerful tool overall. Not really a Microsoft fan, but what they provide here is not bad at all.
The button leads to the editor page which you can acces from the main navigation, it’s weird that the button is disabled on mobile while the editor works fine.
There's a -><- Collapse nodes | Expand Nodes toggle on the RHS vertical toolbar of the web visual editor.
Still appears to be a slight issue with very large nodes (because of very long lines as values) scaling out of the view and being tricky to navigate into view again.
Still a handy tool for certain JSON structures for that first overview.
This is pretty awesome. I wonder how this scales. Like if I wanted to visualize a graph with millions of nodes, would it make sense to copy a whole JSON blob into it?
One of my side projects is called GraphJSON (https://graphjson.com), where we took the opposite approach. Log events (kind of like nodes in your graph) in a segment/mixpanel/amplitude way and then use SQL to stitch these events together. Currently it just does basic visualizations like lines and tables, but it'd be awesome to do the flow charts you've created. Perhaps there's opportunity for partnership?
Having an extra box for nested fields is somewhat annoying and space wasting, I think. Can that be switched on/off? From a drawing perspective it is easier, but it seems it should be possible to do away with the extra box.
I've been looking for something visual like this that can generate JSON Schemas. You would be able to visit any "node", right-click, and specify the constraints you're looking to add to the schema...
Looks like a cool project and I love that it is open source.
But naming a graph visualization tool using the same word as the Microsoft Flowchart visualization tool would make me somewhat nervous since it can cause "brand confusion." Granted I can't find a trademark listed for Visio specifically (maybe the name is too generic) so may be all good.
Probably just me, but the "members" and "powers" arrays in the example should be in the same box as their siblings. When presented in another box joined with arrow, to me it seems to introduce hierarchy that isn't there. Probably I'm unaware of some convention used here.
This looks like it might he useful for migrating pre-typescript code to Typescript. Identifying permutations of otherwise similar objects can be a pain, and sometimes similar APIs will return fields that have the same property name but only contain a small subset of data.
Pedantry - I clicked on the link wondering how it would represent cycles in the JSON, then I found it is a tree. Should the strap line be changed to "Visualize JSON data into trees" :).
That's really cool. One change would be for nested structures I wouldn't put and arrow but have it be a property with the rest of the properties that then has an arrow to the contents.
Something that I am currently struggling at my job is how can I automatically convert everything in a JSON into a table.
I'm writing my own "macros" to deal with it but it's far from ideal yet.
Very cool! This is close to being a perfect mind-map creation tool. Text wrapping would be nice. It can be done manually by adding \n, but that has to be done manually.
Only matters if Microsoft sues. GitHub-owner era Microsoft tends to want to stay in the open source community’s good graces. (Plus I’m sure the owner would just change the name if MS asked, anyway)
That being said, this is also a diagramming tool… I probably would recommend changing it
They'd probably (or I hope they would) ask nicely first, cease-and-desist second, and sue as a last resort.
Whether or not Microsoft allows the use may not be fully at their discretion; or rather their earlier choices could tie their hands in regards to later choices if things go south.
This is a short read on the kinds of issues that start to crop up when you don't agressively enforce your trademarks:
PS: Does anyone knows if there was an emacs mode that'd do this for me automagically?