Skip to content

workshopper/workshopper-adventure-storage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

workshopper-adventure-storage

NPM version Downloads Build Status Coverage Status NPM deps NPM dev devp

Simple storage for workshopper-adventure

Originally included as part of workshopper-adventure, mostly written by Martin Heidegger

Based on prior work of: @substack @rvagg

Install

npm install workshopper-adventure-storage --save
const createStorage = require('workshopper-adventure-storage')

Usage

createStorage.userDir

A default path to store data in.

createStorage([dir[, ...]])

Accepts a sequence of paths for path.resolve to use as the storage directory.

const createStorage = require('workshopper-adventure-storage')
const storage = createStorage(createStorage.userDir, 'my-workshopper')

Properties

storage.dir

The path to store data in.

Methods

storage.save('name', data)

JSON encodes and writes a file to the storage directory. The following will save the file as index.json.

const data = {
  foo: 'bar'
}
storage.save('index', data)

storage.get('name')

Retrieves and unserializes a file from storage.

var data = storage.get('index')

storage.reset()

Clears the storage directory.

storage.reset()

storage.promises

This module seamlessly supports async operations using the .promises object.

const storage =
  createStorage(createStorage.userDir, 'promise-workshop')
    .promises;

storage.dir // works synchronously
await storage.save('name', {})
await storage.get('name')
await storage.reset()