Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
vault-storage
Advanced tools
vault
is a sophisticated browser-based storage library that leverages the power
of IndexedDB, offering significant improvements over traditional LocalStorage.
As a high-performance, asynchronous solution for client-side storage, vault
provides an intuitive and easy-to-use API to interact with IndexedDB, making
client-side data storage efficient and scalable.
Install vault-storage
using npm:
npm install vault-storage --save
Or using yarn:
yarn add vault-storage
First, import vault-storage
in your project:
import vault from 'vault-storage';
By default, the vault
does not need any special initialization or setup!!!
In this way, it behaves similar to the local and session storages, It uses
default database and store names.
Just start using it!
// Set the values.
vault.key1 = "value1";
vault.key2 = "value2";
// Get the values. Remember to use await! As it's asynchronous.
const value1 = await vault.key1; // "value1"
const value2 = await vault.key2; // "value2"
Store data using the setItem
method, indexer syntax, or dot notation:
// For set operation you can ignore await unless you want to wait for the
// operation to complete or you want to catch any errors.
vault.setItem('yourKey', { any: 'data' });
// Indexer syntax.
vault['yourKey'] = { any: 'data' };
// Dot notation.
vault.yourKey = { any: 'data' };
Retrieve data using the getItem
method, indexer syntax, or dot notation. For get
operations you must use await as it's asynchronous.
// Get the value using the getItem method.
const data = await vault.getItem('yourKey');
// Indexer syntax.
const data = await vault['yourKey'];
// Dot notation.
const data = await vault.yourKey;
Remove data using the removeItem
method:
// Remove the value using the remove method.
vault.removeItem('yourKey');
// Indexer syntax.
delete vault['yourKey'];
// Dot notation.
delete vault.yourKey;
Clear all data from the store:
await vault.clear();
Get the count of entries in the store:
const count = await vault.length();
console.log(count);
setItem(key: string, value: any)
: Store data in the database.getItem(key: string)
: Retrieve data from the database.removeItem(key: string)
: Remove data from the database.clear()
: Clear all data from the database.length()
: Get the count of entries in the database.vault
with LocalStorageFeature | vault (IndexedDB) | LocalStorage |
---|---|---|
API Complexity | Simple, intuitive API | Simple, intuitive API |
Capacity | Large (up to browser limit, often no less than 250MB) | Limited (5MB typical) |
Data Types | Supports structured data, including objects and arrays | Only stores strings |
Performance | Asynchronous, non-blocking | Synchronous, can block UI |
Transaction Support | Complete transaction support for reliable data operations | None |
Contributions to vault-storage
are welcome. Please ensure that your code adheres to the existing style and includes tests covering new features or bug fixes.
vault-storage
is MIT licensed.
FAQs
Vault, a micro yet robust browser storage library
The npm package vault-storage receives a total of 4 weekly downloads. As such, vault-storage popularity was classified as not popular.
We found that vault-storage demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.