-
dasel
Select, put and delete data from JSON, TOML, YAML, XML and CSV files with a single tool. Supports conversion between formats and can be used as a Go package.
No HCL support [0] though.
[0]: https://github.com/TomWright/dasel/issues/98
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
xidel
Command line tool to download and extract data from HTML/XML pages or JSON-APIs, using CSS, XPath 3.0, XQuery 3.0, JSONiq or pattern matching. It can also create new or transformed XML/HTML/JSON documents.
I still like Xidel[0] for this reason; it may be a little older, but for a CLI scraper a lot of data transformations needs can be satisfied with Xpath/XQuery.
[0]: https://github.com/benibela/xidel
-
Another one for the big list:
https://github.com/dbohdan/structured-text-tools
In fact it's already on it 6 times.
-
Shameless plug but if you’re a fan of jq style querying rather than sql for some reason you can also use qq[0] for these and a few other formats.
[0] https://github.com/JFryy/qq
-
murex
A smarter shell and scripting environment with advanced features designed for usability, safety and productivity (eg smarter DevOps tooling)
Personally I think this is a problem better spent by fixing the shell. There’s a few alt shells out there now, Nushell, Elvish plus the one I help maintain, Murex (https://murex.rocks).
I’m obviously going to biased here, but it’s definitely worth your time checking out some alt shells.
-
Speaking of trees, gron/ungron is an amazing transformer that allows one to use any query tool on the leaves of the tree and then turn the flattened structure back into a document (json).
I'd love to see gron/ungron implemented for all tree structures.
https://github.com/tomnomnom/gron
-
PowerShell[0]'s built-in Microsoft.PowerShell.Utility[1] module has commands to convert from/to JSON[2], CSV[3], a version of XML[4], or custom key/value pairs[5] into objects, which can then be manipulated. Combined with IO cmdlets such as Get-Content[6] and Set-Content[7], a fair chunk of flat-file storage should be able to be made mutable with PowerShell.
---
[0]: https://learn.microsoft.com/powershell
[1]: https://learn.microsoft.com/powershell/module/microsoft.powe...
[2]: https://learn.microsoft.com/powershell/module/microsoft.powe...
[3]: https://learn.microsoft.com/powershell/module/microsoft.powe...
[4]: https://learn.microsoft.com/powershell/module/microsoft.powe...
[5]: https://learn.microsoft.com/powershell/module/microsoft.powe...
[6]: https://learn.microsoft.com/powershell/module/microsoft.powe...
[7]: https://learn.microsoft.com/powershell/module/microsoft.powe...
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
Hope that preliminary benchmarks listed in the README.md could be implemented in a proof-of-concept scheme rewarding functions returning the correct variable within a blockchain.
https://github.com/sharkdp/hyperfine
Dasel MIT License Copyright (c) 2020 Tom Wright
-
-
jq is such an underrated tool, it is fully turing complete functional language in and of itself. It opens up an ocean of possibilities in combination with scripting languages (python has bindings), and it is ungodly fast chewing up through tons of JSON like its nothing.
It is a bit perl-ish, but being pure and functional it is a little easier to reason about when you have to revisit your queries.
PS I am certainly bookmarking your tool as well =]
There is also amusing project jqjq that implements jq in jq itself that I love to point folks at to see how expressive the language is: https://github.com/wader/jqjq
-
FYI if you pipe that to glow via adding `| glow -` at the end, it will pretty-print it in the Terminal
https://github.com/charmbracelet/glow
-