{"id":47206,"library":"buzzcasting-storage","title":"BuzzCasting Storage Manager","description":"BuzzCasting Storage is a wrapper class for integrating multiple browser storage backends (Local Storage, Session Storage, IDB Keyval, Dexie, Window object) with the BuzzCasting social media wall and dataviz platform. Current stable version 3.21.2. Designed to simplify API calls and data caching for BuzzCasting subscribers, it includes broadcast communication via BroadcastChannel for worker integration. Ships TypeScript types. Limited to the BuzzCasting ecosystem; not a general-purpose storage library.","status":"active","version":"3.21.2","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","typescript"],"install":[{"cmd":"npm install buzzcasting-storage","lang":"bash","label":"npm"},{"cmd":"yarn add buzzcasting-storage","lang":"bash","label":"yarn"},{"cmd":"pnpm add buzzcasting-storage","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"optional IndexedDB storage backend","package":"idb-keyval","optional":true},{"reason":"optional IndexedDB storage backend","package":"dexie","optional":true}],"imports":[{"note":"ESM-only package; default export is named class.","wrong":"const BuzzCastingStorageManager = require('buzzcasting-storage')","symbol":"default (BuzzCastingStorageManager)","correct":"import BuzzCastingStorageManager from 'buzzcasting-storage'"},{"note":"TypeScript interface exported as named export.","wrong":"import { StorageManager } from 'buzzcasting-storage'","symbol":"IStorageManager","correct":"import { IStorageManager } from 'buzzcasting-storage'"},{"note":"TypeScript interface for message data.","wrong":"","symbol":"IMessages","correct":"import { IMessages } from 'buzzcasting-storage'"},{"note":"TypeScript interface for query parameters.","wrong":"","symbol":"IQuery","correct":"import { IQuery } from 'buzzcasting-storage'"}],"quickstart":{"code":"import BuzzCastingStorageManager, { IStorageManager, IQuery, IMessages } from 'buzzcasting-storage';\n\nconst options: IStorageManager = {\n  app: 'my-subdomain',\n  version: 'v4',\n  token: process.env.BUZZCAST_TOKEN ?? '',\n  bearer: process.env.BUZZCAST_BEARER ?? '',\n  storage: 'dexie',\n  moderation: 'none',\n  beforeTime: null,\n  delay: 0,\n  period: 0,\n};\n\nconst manager = new BuzzCastingStorageManager(options);\n\nconst query: IQuery = {\n  type: 'messages',\n  dashboard: 'dashboard_id',\n  widget: 'widget_id',\n};\n\nconst data: IMessages = manager.getMessages(query);\nconsole.log('Messages:', data);\n\nconst channel = new BroadcastChannel('my-subdomain');\nchannel.onmessage = (event: MessageEvent) => {\n  if (event.data.event === 'widget-update') {\n    console.log('Widget updated:', event.data.data);\n  }\n};","lang":"typescript","description":"Initializes the storage manager with options, fetches messages for a widget, and listens for updates via BroadcastChannel."},"warnings":[{"fix":"Pass the actual token value (e.g., from environment variable).","message":"The token field is referred to as 'meta' in examples but actually expects a string.","severity":"gotcha","affected_versions":">=3.0.0"},{"fix":"Use null or new Date().","message":"IQuery.beforeTime expects null or a Date object; passing a string may break.","severity":"gotcha","affected_versions":">=3.0.0"}],"env_vars":null,"search_vec":"'3.21.2':37 'api':41 'backend':15 'broadcast':51 'broadcastchannel':54 'browser':13 'buzzcast':1,4,27,47,64 'cach':45 'call':42 'class':9 'communic':52 'current':34 'data':44 'dataviz':32 'design':38 'dexi':22 'ecosystem':65 'general':69 'general-purpos':68 'idb':20 'includ':50 'integr':11,57 'javascript':73 'keyval':21 'librari':72 'limit':61 'local':16 'manag':3 'media':29 'multipl':12 'object':24 'platform':33 'purpos':70 'session':18 'ship':58 'simplifi':40 'social':28 'stabl':35 'storag':2,5,14,17,19,71 'subscrib':48 'type':60 'typescript':59,74 'version':36 'via':53 'wall':30 'window':23 'worker':56 'wrapper':8","created_at":"2026-06-07T16:50:20.177555+00:00","updated_at":"2026-06-07T16:50:20.177555+00:00","problems":[{"fix":"Use: import BuzzCastingStorageManager from 'buzzcasting-storage'; const manager = new BuzzCastingStorageManager(options);","cause":"Storage manager not instantiated correctly (missing new or wrong import).","error":"TypeError: Cannot read properties of undefined (reading 'getMessages')"},{"fix":"Run: npm install buzzcasting-storage","cause":"Package not installed or bundler misconfiguration.","error":"Module not found: Can't resolve 'buzzcasting-storage'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":null,"github":null,"docs":null,"changelog":null,"pypi":null,"npm":"buzzcasting-storage","openapi_spec":null,"status_page":null,"smithery":null,"categories":["storage"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}