flatterer
jq
flatterer | jq | |
---|---|---|
14 | 306 | |
165 | 25,063 | |
- | - | |
6.6 | 0.0 | |
3 months ago | 11 months ago | |
Rust | C | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
flatterer
-
How to convert a massive JSON into CSV
This tool was built for this purpose https://github.com/kindly/flatterer
-
Show HN: Flatterer Lite, A Rust WASM JSON to tabular converter, for nested data
I have been working on this Rust based JSON flattener (https://github.com/kindly/flatterer) to XLSX/CSV/SQLITE/PARQUET/POSTGRES for about 2 years. I finally made a WASM based one for CSV/XLSX which is really easy to play with. You can use it via a url (if the data has CORS headers), for example https://lite.flatterer.dev?url=https%3A%2F%2Fdummyjson.com%2....
The main difference with other converters/flatteners is that for one-to-many relationships (lists of objects in JSON) it produces a multi table output with keys to help join the tables together. Essentially produces a relational schema, along with some type information, of the JSON provided. For simple non-nested JSON it works too, but is a bit overkill.
Its all opensource and free, and I think that it will become more and more useful as JSON/Graphql APIs proliferate.
-
Create table from JSON
flatterer is the easiest option and will do this for you. It will also load the data into a sqlite or postgres database for you.
-
Robust Rust Library for Converting JSON Objects into CSV Rows
I have also written something similar but higher level flatterer which is python but is a binding to libflatterer. Its main difference is when there is a list of objects it treats it a one to many and creates a separate CSV file.
-
Flatten a massive json file
flatterer (github) is designed for this.
-
Simple GUI tool to query JSON or CSV databases [I have no coding skills]
This looks great and using duckdb as a backend us a great choice. For JSON I suggest using flatterer https://flatterer.opendata.coop/ . Which will convert most JSON into CSV/Parquet with very little technical knowledge.
-
Rust for Data Engineering
My project flatterer (used for flattening JSON into tables) also is mainly a python cli/libarary but is written in Rust for speed/memory efficiency and better concurrency.
-
JSON Processing
I have been working on a similar tool for the last while called flatterer (github). It has a similar aim and works with most kinds of JSON well (but not very well with top level objects like yours).
-
Stream processing - Nested JSON to Parquet
You could try Option B with flatterer https://flatterer.opendata.coop/ which purpose is to convert nested JSON into other formats without a schema upfront including parquet.
-
Turning JSON arrays into tables - Data flattening
flatterer docs (github)
jq
-
GNU Parallel, where have you been all my life?
That should recursively list directories, counting only the files within each, and output² jsonl that can be further mangled within the shell². You could just as easily populate an associative array for further work, or $whatever. Unlike bash, zsh has reasonable behaviour around quoting and whitespace too.
¹ https://zsh.sourceforge.io/Doc/Release/User-Contributions.ht...
² https://github.com/jpmens/jo
³ https://github.com/stedolan/jq
- How do i edit reputation?
-
Jj: JSON Stream Editor
What I miss from jq and what is implemented but unreleased is platform independent line delimiters.
jq on Windows produces \r\n terminated lines which can be annoying when used with Cygwin / MSYS2 / WSL. The '--binary' option to not convert line delimiters is one of those pending improvements.
https://github.com/stedolan/jq/commit/0dab2b18d73e561f511801...
-
Building and deploying a web API powered by ChatGPT
If you have jq installed you can use it to make the output look nicer.
-
Search in your Jupyter notebooks from the CLI, fast.
It requires jq for JSON processing and GNU parallel for concurrent searches in the notebooks.
- Check the jq manual!
- mkv vs mp4 metadata
-
Amazon Begs Employees Not to Leak Corporate Secrets to ChatGPT
jq is your friend.
- Memes are all cool and all. But this is your daily remaining that 10000! =
-
How to export/import/externally-edit/whatever WI entries?
The jq command (https://stedolan.github.io/jq/) is useful pulling that information out.
What are some alternatives?
json2csv - command line tool to convert json to csv
yq - Command-line YAML, XML, TOML processor - jq wrapper for YAML/XML/TOML documents
libflatterer - Lib flatterer: A lib to make JSON flatterer
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.
miller - Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON
gojq - Pure Go implementation of jq
flatten-tool - Tools for generating CSV and other flat versions of the structured data
json5 - JSON5 — JSON for Humans
json-roller - Command line tool for converting json data structures to tables
jp - Validate and transform JSON with Bash
adventofcode - https://adventofcode.com/
nushell - A new type of shell