#json #loca-database

json_tables

A structure that eases operations with a local json storage of undetermined items

4 releases

0.0.4 Nov 27, 2022
0.0.3 Sep 24, 2022
0.0.2 Aug 9, 2022
0.0.1 Jul 30, 2022

#1614 in Data structures

Download history 116/week @ 2024-07-21 134/week @ 2024-07-28 85/week @ 2024-08-04 73/week @ 2024-08-11 51/week @ 2024-08-18 72/week @ 2024-08-25 40/week @ 2024-09-01 40/week @ 2024-09-08 53/week @ 2024-09-15 82/week @ 2024-09-22 71/week @ 2024-09-29 84/week @ 2024-10-06 50/week @ 2024-10-13 94/week @ 2024-10-20 125/week @ 2024-10-27 149/week @ 2024-11-03

423 downloads per month
Used in 5 crates (2 directly)

Unlicense

27KB
455 lines

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.

Dependencies

~0.7–1.6MB
~34K SLoC