Installations
npm install @waelio/ustore
Developer Guide
Typescript
Yes
Module System
CommonJS, ESM
Node Version
19.0.0
NPM Version
9.6.7
Score
48.7
Supply Chain
89.7
Quality
69.1
Maintenance
100
Vulnerability
95.8
License
Releases
Contributors
Unable to fetch Contributors
Languages
TypeScript (98.68%)
HTML (0.91%)
JavaScript (0.41%)
Developer
waelio
Download Statistics
Total Downloads
14,762
Last Day
4
Last Week
36
Last Month
181
Last Year
2,184
GitHub Statistics
2 Stars
323 Commits
2 Watching
6 Branches
1 Contributors
Bundle Size
208.56 kB
Minified
75.11 kB
Minified + Gzipped
Package Meta Information
Latest Version
0.0.114
Package Id
@waelio/ustore@0.0.114
Unpacked Size
510.37 kB
Size
87.14 kB
File Count
232
NPM Version
9.6.7
Node Version
19.0.0
Publised On
05 Jun 2023
Total Downloads
Cumulative downloads
Total Downloads
14,762
Last day
-55.6%
4
Compared to previous day
Last week
-70.5%
36
Compared to previous week
Last month
5,933.3%
181
Compared to previous month
Last year
-67.7%
2,184
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
Dependencies
10
A universal store cross-frameworks
@waelio/ustore
Visit the source code ustore on gitHub.
uStore project is a plugin I'v wanted for a while, the ability to have my own state-management in my projects.
As this is a pilot, please feel free to join the discussion. All are welcomed.
For more examples, please vitit testing-ustore for help.
Crurrent stores:
- local: local
- session: session
- cookie: cookie
- vuex: vuex
- pinia: pinia
- gun: gun
- memory: memory
- secure: secure
- config: config
- idb: index Db -pending
- webql: wb sql -pending
local
Window local Storage, see docs below
1import { uStore, localStorage } from '@waelio/ustore'; 2 3describe('Local storage', () => { 4 const payload = 'Test Payload1'; 5 const label = 'test'; 6 uStore.local.set(label, payload); 7 test('uStore set & get', () => { 8 expect(uStore.local.get(label)).toEqual(payload); 9 }); 10 localStorage.set(label, payload); 11 test('localStorage set & get', () => { 12 expect(localStorage.get(label)).toEqual(payload); 13 }); 14});
session
Window session Storage, see docs below
1import { uStore, sessionStorage } from '@waelio/ustore'; 2 3describe('Session storage', () => { 4 const payload = 'Test Payload1'; 5 const label = 'test'; 6 uStore.session.set(label, payload); 7 test('uStore set & get', () => { 8 expect(uStore.session.get(label)).toEqual(payload); 9 }); 10 sessionStorage.set(label, payload); 11 test('sessionStorage set & get', () => { 12 expect(sessionStorage.get(label)).toEqual(payload); 13 }); 14});
cookie
Document Cookies, see docs below
1import { uStore, cookieStorage } from '@waelio/ustore'; 2 3describe('Cookie storage', () => { 4 const payload = 'Test Payload1'; 5 const label = 'test'; 6 uStore.cookie.set(label, payload); 7 test('uStore set & get', () => { 8 expect(uStore.cookie.get(label)).toEqual(`${label}=${payload}`); 9 }); 10 cookieStorage.set(label, payload); 11 test('cookieStorage set & get', () => { 12 expect(cookieStorage.get(label)).toEqual(`${label}=${payload}`); 13 }); 14});
vuex
Vue state management, see docs below
1import { uStore, vuexStorage } from '@waelio/ustore'; 2 3describe('Vuex storage', () => { 4 const payload = 'Test Payload1'; 5 const label = 'test'; 6 uStore.vuex.set(label, payload); 7 test('uStore set & get', () => { 8 expect(uStore.vuex.get()).toEqual(payload); 9 }); 10 vuexStorage.set(label, payload); 11 test('vuexStorage set & get', () => { 12 expect(vuexStorage.get()).toEqual(payload); 13 }); 14});
pinia
Pinia State Management, see docs below
1import { uStore, piniaStorage } from '@waelio/ustore'; 2 3describe('Pinia storage', () => { 4 const payload = 'Test Payload1'; 5 const label = 'test'; 6 uStore.pinia.set(payload); 7 test('pinia set & get', () => { 8 expect(uStore.pinia.get()).toEqual(payload); 9 }); 10 piniaStorage.set(payload); 11 test('piniaStorage set & get', () => { 12 expect(piniaStorage.get()).toEqual(payload); 13 }); 14});
gun
Gun DB, , see docs below
1import { uStore } from '@waelio/ustore'; 2 3// Did not pass testing yet 4uStore.gun.set('testName', 'test Payload'); 5uStore.gun.get('testName') === 'test Payload';
memory
In memory storage
1import { uStore, memoryStorage } from '@waelio/ustore'; 2 3describe('Memory storage', () => { 4 const payload = 'Test Payload1'; 5 const label = 'test'; 6 uStore.memory.set(label, payload); 7 8 test('uStore set & get', () => { 9 expect(uStore.memory.get(label)).toEqual(payload); 10 }); 11 memoryStorage.set(label, payload); 12 test('memoryStorage set & get', () => { 13 expect(memoryStorage.get(label)).toEqual(payload); 14 }); 15});
secure
Enctypted and Decrypted storage
1import { uStore, secureStorage } from '@waelio/ustore'; 2 3describe('Secure storage', () => { 4 const payload = 'Test Payload1'; 5 const label = 'test'; 6 uStore.secure.set(label, payload); 7 test('uStore set & get', () => { 8 expect(uStore.secure.getItem(label)).toEqual(payload); 9 }); 10 secureStorage.set(label, payload); 11 test('secureStorage set & get', () => { 12 expect(secureStorage.getItem(label)).toEqual(payload); 13 }); 14});
config
Config is home-brewed solution, more documentations coming soon.
1import { uStore, configStorage } from '@waelio/ustore'; 2 3const payload = 'Test Payload1'; 4const label = 'test'; 5 6describe('uStore Storage', () => { 7 uStore.config.set(label, payload); 8 test('uStore set & get', () => { 9 expect(uStore.config.getItem(label)).toEqual(payload); 10 }); 11 configStorage.set(label, payload); 12 test('configStorage set & get', () => { 13 expect(configStorage.getItem(label)).toEqual(payload); 14 }); 15});
idb
Not implemented yet
1import { uStore, idbStorage } from '@waelio/ustore'; 2 3describe('Idb storage', () => { 4 const payload = 'Test Payload1'; 5 const label = 'test'; 6 uStore.idb.set(label, payload); 7 test('uStore set & get', () => { 8 expect(uStore.idb.getItem(label)).toEqual(payload); 9 }); 10 idbStorage.set(label, payload); 11 test('idbStorage set & get', () => { 12 expect(idbStorage.getItem(label)).toEqual(payload); 13 }); 14});
webql
Not implemented yet
1 2import { uStore, webqlStorage } from '@waelio/ustore'; 3 4describe('webqlStorage storage', () => { 5 const payload = 'Test Payload1'; 6 const label = 'test'; 7 uStore.webql.set(label, payload); 8 test('uStore set & get', () => { 9 expect(uStore.webql.getItem(label)).toEqual(payload); 10 }); 11 webqlStorage.set(label, payload); 12 test('webqlStorage set & get', () => { 13 expect(webqlStorage.getItem(label)).toEqual(payload); 14 }); 15}); 16
References
![Empty State](/_next/static/media/empty.e5fae2e5.png)
No vulnerabilities found.
![Empty State](/_next/static/media/empty.e5fae2e5.png)
No security vulnerabilities found.