storagesync-js
v1.0.2
Published
A tiny JS wrapper for localStorage and sessionStorage with expiry, encryption, and multi-tab sync.
Maintainers
Readme
StorageSync.js
StorageSync.js is a lightweight JavaScript utility for synchronizing localStorage data across tabs and sessions — with namespacing, change detection, and intuitive API support.
📦 Easy to use. 🧠 Built for real-world use-cases. 💬 Keeps your app state in sync across tabs.
🚀 Installation
npm install storagesync-js🧠 Why StorageSync?
Managing localStorage is easy — but syncing it across tabs with clean namespacing and change listeners is not .
This package wraps native storage with powerful features:
- Namespaced key management
- Change detection with
.onChange() - Simple
.set(),.get(),.remove(), and.clear()methods - Zero dependencies
📦 Usage
🧰 API Reference
new StorageSync(namespace: string)
Creates a new instance with the given namespace. All keys will be stored as namespace:key.
.set(key: string, value: any)
Stores a key-value pair in localStorage.
.get(key: string)
Retrieves a value by key. Automatically parses JSON.
.remove(key: string)
Removes a key from storage.
.clear()
Clears all keys under the current namespace only (does not affect global localStorage).
.onChange(callback: Function)
Fires a callback whenever localStorage changes in another tab or window for the current namespace.
🔐 Example Use-Cases
- Shared auth tokens across tabs
- Tab-specific session data
- Synced feature toggles or theme preferences
- Building offline-friendly apps
📄 License
This project is licensed under the MIT License.
🤝 Contributing
Pull requests, suggestions, and issues are welcome! If you find a bug or want a feature, feel free to open an issue or PR.
✨ Author
Created by Alan Thomas – a passionate full-stack developer.
Let’s connect on GitHub!
