Unstorage provides an async Key-Value storage API with conventional features like multi driver mounting, watching and working with metadata, dozens of built-in drivers and a tiny core.
👉 Documentation
- Designed for all environments: Browser, NodeJS, and Workers
- Lots of Built-in drivers
- Asynchronous API
- Unix-style driver mounting to combine storages
- Default in-memory storage
- Tree-shakable utils and tiny core
- Auto JSON value serialization and deserialization
- Binary and raw value support
- State snapshots and hydration
- Storage watcher
- HTTP Storage with built-in server
Install unstorage npm package:
# yarn
yarn add unstorage
# npm
npm install unstorage
# pnpm
pnpm add unstorageimport { createStorage } from "unstorage";
const storage = createStorage(/* opts */);
await storage.getItem("foo:bar"); // or storage.getItem('/foo/bar')👉 Check out the the documentation for usage information.
You can use the nightly release channel to try the latest changes in the main branch via unstorage-nightly.
If directly using unstorage in your project:
{
"devDependencies": {
"unstorage": "npm:unstorage-nightly"
}
}If using unstorage via another tool in your project:
{
"resolutions": {
"unstorage": "npm:unstorage-nightly"
}
}- Clone repository
- Install dependencies with
pnpm install - Use
pnpm devto start jest watcher verifying changes - Use
pnpm testbefore pushing to ensure all tests and lint checks passing