@internetarchive/local-cache v0.2.1
Internet Archive Local Cache
A browser-based cache to store, retrieve, and expire key-value pairs. Built on IndexedDB.
Installation
yarn add @internetarchive/local-cacheUsage
import { LocalCache } from '@internetarchive/local-cache';
const localCache = new LocalCache();
// set a value
await localCache.set({
key: 'foo',
value: 'bar',
ttl: 10 // in seconds
})
// get a value
let cachedValue = await localCache.get('foo');
console.debug(cachedValue) // 'bar'
// delete a value
await localCache.delete('foo');
cachedValue = await localCache.get('foo');
console.debug(cachedValue) // undefinedAdvanced Usage
Customize the namespace and default TTL
const localCache = new LocalCache({
namespace: 'MyCustomNamespace',
defaultTTL: 30 * 60 // 30 minutes
});Local Demo with web-dev-server
yarn startTo run a local development server that serves the basic demo located in demo/index.html
Testing with Web Test Runner
To run the suite of Web Test Runner tests, run
yarn run testTo run the tests in watch mode (for <abbr title="test driven development">TDD</abbr>, for example), run
yarn run test:watchLinting with ESLint, Prettier, and Types
To scan the project for linting errors, run
yarn run lintYou can lint with ESLint and Prettier individually as well
yarn run lint:eslintyarn run lint:prettierTo automatically fix many linting errors, run
yarn run formatYou can format using ESLint and Prettier individually as well
yarn run format:eslintyarn run format:prettierTooling configs
For most of the tools, the configuration is in the package.json to reduce the amount of files in your project.
If you customize the configuration a lot, you can consider moving them to individual files.
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago