@jacobmarshall/kv
    TypeScript icon, indicating that this package has built-in type declarations

    0.2.0 • Public • Published

    kv

    This is a fork of idk-kv.

    A super simple key value store backed by IndexedDB.

    Since it is backed by IndexedDB, you can store anything structured-clonable (numbers, arrays, objects, dates, blobs etc - but beware of browser support).

    It's best used with a module loader (webpack, browserify, etc...) so that the global scope isn't poluted with kv.

    Usage

    kv(string name) kv

    Creates a custom kv store with a given name.

    const store = kv('sw-storage');
    await store.set('hello', 'world');
    console.log(await kv.get('hello'));
    // -> undefined

    kv.set(string key, * value) Promise

    await kv.set('hello', 'world');
    await kv.set('foo', 'bar');
    try {
      await kv.set('hello', 'world')
      console.log('It worked!');
    } catch(err) {
      console.log('It failed!', err);
    }

    kv.get(string key) Promise<*>

    console.log(await kv.get('hello'));
    // -> "world"

    kv.keys() Promise<string>

    console.log(await kv.keys());
    // -> ["hello", "foo"]

    kv.remove(string key) Promise

    await kv.remove('hello');

    kv.clear() Promise

    await kv.clear();

    That's it!

    Install

    npm i @jacobmarshall/kv

    DownloadsWeekly Downloads

    212

    Version

    0.2.0

    License

    Apache-2.0

    Last publish

    Collaborators

    • avatar