A lightweight, schema-less document store built on SQLite, designed for quick prototyping and storing config data. Current stable version is 1.1.7. It uses better-sqlite3 under the hood and exposes a JavaScript Proxy-based tree interface for CRUD operations. Unlike full MongoDB, it leverages SQLite for persistence without a separate server. Key differentiators: auto-save to DB, ability to break binding (._) for transient changes, and meta-data access. Release cadence is low; version 1.x is stable. Not actively maintained; last release was in 2020.
npm install sqlite-tree-storeNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Demonstrates initializing store, creating root proxy, and setting nested properties with auto-save.
Use as: const treeStore = require('sqlite-tree-store'); const build = treeStore('path.db', 'tableName'); const t = build();Use the `._` binding break for transient changes: t.config.mail._.port = 10025; changes won't persist.
Ensure build tools (node-gyp, python) are present; for CI, use prebuilt binaries via better-sqlite3's prebuildify.
If using depth, pass as second argument: tree([], 1). For full tree, omit both arguments: tree().
npm install better-sqlite3
Use const treeStore = require('sqlite-tree-store')Ensure consistent table name: const build = treeStore('mydb.db', 'mytable'); then build() creates table 'mytable' and view 'v_mytable'.