localstorage-ponyfill
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

localstorage-ponyfill Build Status

Universal LocalStorage ponyfill library for browser and Node.js.

Install

Install with npm:

npm install localstorage-ponyfill

Usage

Auto(Browser or Node.js)

Automatically select mode.

import { createLocalStorage } from "localstorage-ponyfill";
const localStorage = createLocalStorage();
localStorage.setItem("key", "value");
const value = localStorage.getItem("key");
assert.strictEqual(value, "value");        

Browser

Native localStorage.

import { createLocalStorage } from "localstorage-ponyfill";
const localStorage = createLocalStorage({ mode : "browser" });

Node.js

Use node-localstorage

Store data to <app-root>/.cache/localstorage-ponyfill/* by default. You can setting the path by storeFilePath option.

import { createLocalStorage } from "localstorage-ponyfill";
const localStorage = createLocalStorage({ mode : "node" });

In memory

Use localstorage-memory

import { createLocalStorage } from "localstorage-ponyfill";
const localStorage = createLocalStorage({ mode : "memory" });

API

Same with Window.localStorage

export interface LocalStoragePonyfill {
    readonly length: number;
 
    clear(): void;
 
    getItem(key: string): string | null;
 
    key(index: number): string | null;
 
    removeItem(key: string): void;
 
    setItem(key: string, data: string): void;
 
    [key: string]: any;
 
    [index: number]: string;
}
 

Changelog

See Releases page.

Running tests

Install devDependencies and Run npm test:

npm i -d && npm test

Contributing

Pull requests and stars are always welcome.

For bugs and feature requests, please create an issue.

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Author

License

MIT © azu

Package Sidebar

Install

npm i localstorage-ponyfill

Weekly Downloads

1,859

Version

1.0.2

License

MIT

Unpacked Size

13.6 kB

Total Files

19

Last publish

Collaborators

  • azu