Skip to content

shahradelahi/storage-box

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

73 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

StorageBox
CI npm npm bundle size MIT

storage-box is a JavaScript library designed for the purpose of storing data in various structures across multiple storage systems. The primary goal of this library is to offer a straightforward and effective method for data storage.

๐Ÿ‘€ Features

  • Simple API
  • Support for Node.js, Bun and the browser
  • Support for multiple storage types (Memory, File, Browser-storage, etc.)
  • Multiple data structures (Literals, Hashes, Lists, etc.)
  • Time-based key expiration

โš™๏ธ Installation

npm i storage-box

๐Ÿ“– Usage

import { Client } from 'storage-box';

const client = new Client();

client.setex('key', 'value', 2);

console.log(client.get('key')); // value

// time to live in milliseconds
console.log(client.ttl('key', true)); // 2000

// after 3 seconds
setTimeout(() => {
  console.log(client.get('key')); // undefined
}, 3e3);

๐Ÿ“ฆ Storage Types

  • Memory (Docs) (default)
  • File-based (Fs) (Docs)
  • Local/Session Storage (Docs)

๐Ÿ“š Documentation

For all configuration options, please see the API docs.

๐Ÿค Contributing

You can contribute to this project by opening an issue or a pull request on GitHub. Feel free to contribute, we care about your ideas and suggestions.

Project Stats

Alt

License

MIT ยฉ Shahrad Elahi