bun add vali-storagesnpm install vali-storagesUna API async, limpia y completamente tipada sobre localStorage y sessionStorage.
Encriptación AES-128, 192 o 256-bit via la Web Crypto API. Los valores se encriptan en escritura y se descifran en lectura automáticamente.
Configura el tiempo de vida en segundos, minutos, horas o días. Los items expirados se eliminan en la siguiente lectura.
Usa createTypedStorage<Schema>() para verificación de tipos en compilación. Detecta errores antes de que ocurran en runtime.
Reacciona a cambios desde otras pestañas con onChange. Experiencias multi-tab reactivas sin ningún boilerplate.
Aislamiento por prefijo. clear() y size() solo afectan su propio namespace — sin colisiones entre instancias.
Lee y escribe múltiples claves con setItems, getItems y getAll. Ejecución paralela eficiente internamente.
Desde uso básico hasta encriptación AES-256, tipado estricto y sync entre pestañas.
import { ValiStorages } from 'vali-storages';
const storage = new ValiStorages();
// Escribir y leer
await storage.setItem('usuario', 'felipe');
const nombre = await storage.getItem<string>('usuario');
// → 'felipe'
// Verificar, contar, leer todo
storage.has('usuario'); // → true
storage.size(); // → 1
const todo = await storage.getAll(); // → { usuario: 'felipe' }
// Patrón cache — calcula solo si no existe
const data = await storage.getOrSet('config', async () => {
return await obtenerConfigDeAPI();
});
// Eliminar y limpiar
storage.removeItem('usuario');
storage.removeExpired();
storage.clear();Explora la documentación completa y lleva tu manejo de storage al siguiente nivel.