huan / memory-card

Memory Card is an Easy to Use Key/Value Store Implements ES6 Map with Async API in Distribution Scenarios.

Home Page:https://paka.dev/npm/memory-card

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MEMORY CARD

NPM Version npm (next) GitHub Action TypeScript

Memory Card is an Easy to Use Key/Value Store, with Swagger API Backend & Serialization Support.

  • It is design for using in distribution scenarios.
  • It is NOT design for performance.

Memory Card

API

/**
 * ES6 Map like Async API
 */
export interface AsyncMapLike<K = any, V = any> {
  size: Promise<number>

  [Symbol.asyncIterator](): AsyncIterableIterator<[K, V]>
  entries()                  : AsyncIterableIterator<[K, V]>
  keys    ()                 : AsyncIterableIterator<K>
  values  ()                 : AsyncIterableIterator<V>

  get     (key: K)           : Promise<V | undefined>
  set     (key: K, value: V) : Promise<void>
  has     (key: K)           : Promise<boolean>
  delete  (key: K)           : Promise<void>
  clear   ()                 : Promise<void>
}

export class MemoryCard implements AsyncMapLike { ... }

MemoryCard is an AsyncMapLike interface

1. load()

2. save()

3. destroy()

4. multiplex()

TODO

  1. Swagger API Backend Support
  2. toJSON Serializable with Metadata

CHANGELOG

master v1.1 (Nov 27, 2021)

  1. Fix #39 by update AsyncMapLike to v1.0

v1.0 (Nov 10, 2021)

  1. Release v1.0
  2. ES Module support

v0.13 (Aug, 2021)

  1. Move S3 & OBS to peer dependency to reduce install size
  2. Add Etcd Storage support

v0.6 master (Aug 2018)

  1. Support AWS S3 Cloud Storage

v0.4 July 2018

  1. Add multiplex() method to Multiplex MemoryStore to sub-MemoryStores.

v0.2 June 2018

  1. Unit Testing
  2. NPM Pack Testing
  3. DevOps to NPM with @next tag support for developing branch

v0.0 May 31st, 2018

  1. Promote Profile of Wechaty to SOLO NPM Module: MemoryCard
  2. Update the API to ES6 Map-like, the difference is that MemoryCard is all Async.

AUTHOR

Huan LI <zixia@zixia.net>

profile for zixia at Stack Overflow, Q&A for professional and enthusiast programmers

COPYRIGHT & LICENSE

  • Code & Docs © 2017-now Huan LI <zixia@zixia.net>
  • Code released under the Apache-2.0 License
  • Docs released under Creative Commons

About

Memory Card is an Easy to Use Key/Value Store Implements ES6 Map with Async API in Distribution Scenarios.

https://paka.dev/npm/memory-card

License:Apache License 2.0


Languages

Language:TypeScript 57.2%Language:JavaScript 38.3%Language:Shell 4.5%