It takes JSON input and produces flat, key-value output based on the path to the value. Usage with grep was obviously the original intention, but I've used it to help me better understand a given JSON's structure, too, which I then usually reflect back into a program that's consuming that JSON.
It also supports "ungron" too, so, for example, `gron some.json | grep -v "thing I don't want" | gron -u > filtered.json" makes for quick filtering of a JSON. I find it more user friendly than jq's language.
It takes JSON input and produces flat, key-value output based on the path to the value. Usage with grep was obviously the original intention, but I've used it to help me better understand a given JSON's structure, too, which I then usually reflect back into a program that's consuming that JSON.
It also supports "ungron" too, so, for example, `gron some.json | grep -v "thing I don't want" | gron -u > filtered.json" makes for quick filtering of a JSON. I find it more user friendly than jq's language.