Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
buntdb
BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support
-
miller
Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
For the sake of easy querying, MongoDB would be what I want but it's not fitting for a cli tool. I came across https://github.com/vincentdchan/PoloDB which is a lightweight embedded mongo-alike, very awesome, but it's for Rust.
or just use cocroachdb (it's single binary), spawn the cockroach using https://github.com/kokizzu/goproc
https://github.com/FerretDB/example -> mongodb proxy to postgres
https://github.com/tidwall/buntdb -> i think this one you might want
I use Badger a lot, it doesn’t do much but it’s fast
I wrote Hare just for this kind of use case: https://github.com/jameycribbs/hare
Miller can query JSON files as-is and do it from a command line for you. I'm not sure why you say you need an "embedded json db" for something that small; unless you want it that way just for the ability issue queries? Is mongo a requirement for this? Regardless, Miller gives you a query capability as well and can be used on JSON, XML, and CSV.