npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

fluid-storage

v0.1.3

Published

A simple and fast client-side structured data storage interface

Downloads

27

Readme

Fluid Storage : v0.1.3

A simple and fast client-side structured data storage interface

A propos

Fluid Storage est un petit systeme qui propose une interface simple et uniforme pour manipuler les données stockées sur le navigateur du l'utilisateur (localStorage, sessionStorage, cookie)

Prérequis

Aucun

Installation

// Via NPM
npm install fluid-storage

// Via la balise script
<script src="path/to/fluid-storage/index.js"></script>

Initialisation

Une fois le l'installation terminée, il ne vous reste plus qu'à utiliser les fonctions disponibles

// es6
import fluidStorage from 'fluid-storage';

// Avec utilisation de la balise script
const fluidStorage = window.fluidStorage;


// Instantiation
let storage = fluidStorage.init('prefixe', 'localstorage');

La méthode init prend 2 paramètres

  • prefix (string) : Considérez le comme le namespace de vos données. Chaque fois que vous enregistrerez unz donnée dans votre store, la clé de cette donnée sera préfixé par ce paramètre. Cela permet d'avoir des clés avec les même clé sans qu'il y ait collision.
  • type (string) : C'est le type de stockage que vous souhaitez utiliser pour gérer votre store. Les valeurs admissible sont: localstorage, sessionstorage, cookie.

Utilisation

A ce niveau, vous disposez une interface commune pour lire, écrire ou supprimer les données de votre store

Ecrire les données

storage.set('userId', 1); // Accepte les nombres
storage.set('token', 'ejHhu.....'); // Accepte les chaines
storage.set('privileges', ['ADD_DATA', 'REMOVE_DATA']); // Accepte les tableau
storage.set('phone', {id: 12, price: '2000 USD', name: 'Iphone 10'}); // Accepte les objets

En fonction du type de stockage (localstorage, sessionstorage, cookie) défini lors de l'instantiation de l'objet, les données seront stockées soit dans le localStorage, la sessionStorage et les cookies.

La méthode set prend un troisième paramètre qui permet de définir la durée (en minute) de la donnée dans le store. Si à un instant t, la durée que vous avez définie est expirée, votre donnée sera automatiquement supprimée

storage.set('accessToken', 'ejHhu.....', 2); // Cette donnée sera stockée pendant 2 minutes, après ce temps, la donnée sera supprimée lorsqu'on essayera de la recupérer

Dans le cas où vous utiliserez les cookies, ce nombre ne sera pas en minutes mais en jours. Ainsi, le code ci-dessus définira un cookie valable 2 jours.

Lire les données

console.log(storage.get('userId')); // => 1
console.log(storage.get('token')); // => ejHhu.....
console.log(storage.get('privileges')); // =>['ADD_DATA', 'REMOVE_DATA']

Supprimer les données

storage.remove('userId'); // Supprimer la clé userId du store
storage.remove('userId', 'token'); // Supprimer les clés userId et token du store'

Vider tout le storage

storage.clear();

Toutes vos contributions (code, critique ou suggestion) sont les bienvenues. J'espère que ce petit projet poura vous aider