json_tables

Crates.iojson_tables
lib.rsjson_tables
version0.0.4
sourcesrc
created_at2022-07-30 21:55:52.60431
updated_at2022-11-27 22:55:19.806137
descriptionA structure that eases operations with a local json storage of undetermined items
homepage
repositoryhttps://github.com/david-soto-m/json_tables
max_upload_size
id635791
size55,274
David (david-soto-m)

documentation

README

What

This crate contains a structure that acquires data form an indeterminately big amount of files in a directory. It also provides Error types and builders for the structure.

It assumes that a directory is a table with each file in the directory being an entry. More information in the docs.

Why

This crate exists in order to solve the following problem. You need your user to hold to a bunch of data which they should be able to modify on their own. It is simple structured data, of an undetermined length.

The problem with it is that a database is unreadable by the user and you need to provide an interface to it. Should you want to provide said interface, SQLite is ideal, with several crates to choose bindings from, being rusqlite the most popular one. If you want ORM (object relational mapping) there is diesel and sea-QL.

You don't want to provide the interface, or have to deal with SQL or with database management. Shame on you, and shame on me for making it easier (I hope) for you.

Dogfooding

I am personally using this crate in my application amisgitpm.

How

It navigates to a directory, opens all the files and stores the content according to a structure. There are cleverer ways, like caching what's used. Those are not used.

Commit count: 12

cargo fmt