XeDB
Cross-runtime embedded database for JavaScript.
Usage
Storage runtimes
Deno
Fromimport {
createDatastore
} from 'https://git.kaki87.net/KaKi87/xedb/raw/branch/master/mod.js';
import deno from 'https://git.kaki87.net/KaKi87/xedb/raw/branch/master/lib/deno.js';
const datastore = createDatastore({
runtime: deno
});
Node
Fromimport {
createDatastore
} from 'xedb.js';
import node from 'xedb.js/lib/node.js';
const datastore = createDatastore({
runtime: node
});
From browser
<script type="module">
import {
createDatastore
} from 'https://cdn.jsdelivr.net/gh/KaKi87-2/xedb/mod.js';
import browser from 'https://cdn.jsdelivr.net/gh/KaKi87-2/xedb/lib/browser.js';
const datastore = createDatastore({
runtime: browser
});
</script>
In-memory runtimes
Using storage runtimes examples, replace the runtime
import with :
-
inMemory.deno.js
for Deno ; -
inMemory.node.js
for Node ; -
inMemory.browser.js
for browser.
API
Most MongoDB methods as well as query operators (thanks to crcn/sift.js
) and update operators (thanks to seald/nedb/lib/model
) are supported.
Serializers
The createDatastore
method takes a serializer
parameter containing serialize
and deserialize
methods (JSON by default).
DSV support is planned.
Related projects
louischatriot/nedb
-
seald/nedb
(maintained fork oflouischatriot/nedb
) -
denyncrawford/dndb
(Deno port oflouischatriot/nedb
) -
AmateurPotion/dndb
(maintained fork ofdenyncrawford/dndb
)