npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@rnd7/rum-storage

v1.0.11

Published

Rumbullion Storage Abstraction Base Class

Downloads

25

Readme

Rumbullion Storage

Generic single index Storage Abstraction Base Class used by the Rumbullion Toolkit. It is more likely that you want to use a derived Class such as the TemporaryStorage Class.

See also:

Rumbullion

TemporaryStorage

Download

Builds

Installation

npm i @rnd7/rum-storage

Include

Via script tag

<script src="node_modules/@rnd7/rum-storage/dist/rum-storage.js"></script>

Using require

const Storage = require('@rnd7/rum-storage')

Using import

import { Storage } from '@rnd7/rum-storage'

Usage

let myStorage = new Storage()
let sid = 'someStorageId'
myStorage.insert({sid, myProperty: "myValue"}).then(console.log)

API

Constructor

Pass optional configuration data as opts parameter assigned directly to the instance.

new Storage(opts)

The Defaults are. The index can be either a string or an array. When using and array this will result in a combined index of multiple properties. The delimiter is used to generate the index key string.

{
  index: 'sid', // storage id as default index field
  indexDelimiter: '-'
}

insert

Inserts a new record. Pass some JSONable Data as record parameter. If it contains a property matching the storage index this key will be used otherwise a random key is generated. Returns Promise resolving with the inserted data or rejecting with an error code.

insert(record)

list

List all records. Returns Promise resolving with an array containing all sids.

list()

find

Find a single record. Returns Promise resolving with the corresponding data. You can either pass the index or an object containing the indexed field.

find(recordOrIndex)

update

Updates a single record. The data passed is merged into the actual record. Returns Promise resolving with the updated record. The Base Storage Class update is using assign, so keep in mind when working with references. Prefer shallow objects.

update(record)

upsert

Updates or inserts data. Internally update and insert are invoked.

upsert(recordOrIndex)

replace

Replaces an existing record.

replace(record)

remove

Removes an existing record. Pass an object or the index.

remove(recordOrIndex)

Development

Installation

Install development dependencies such as gulp4, webpack, babel and mocha

npm install

Build

Production build

npm run build

Test

Run Tests

npm test

License

See the LICENSE file for software license rights and limitations (MIT).