{"id":44013,"library":"svelte-adapter-uws-extensions","title":"svelte-adapter-uws-extensions","description":"Extensions for svelte-adapter-uws providing Redis and Postgres-backed features: distributed pub/sub, replay buffers, presence tracking, rate limiting, groups, and database change notifications. Current stable version is 0.5.10 with rough monthly releases. Unlike standalone WebSocket managers, this integrates natively with SvelteKit's adapter lifecycle and uses uWebSockets.js directly. Requires Node >=22 and peer dependency svelte-adapter-uws ^0.5.8.","status":"active","version":"0.5.10","language":"javascript","source_language":"en","source_url":"https://github.com/lanteanio/svelte-adapter-uws-extensions","tags":["javascript","svelte","sveltekit","uwebsockets","redis","postgres","pubsub","websocket","presence"],"install":[{"cmd":"npm install svelte-adapter-uws-extensions","lang":"bash","label":"npm"},{"cmd":"yarn add svelte-adapter-uws-extensions","lang":"bash","label":"yarn"},{"cmd":"pnpm add svelte-adapter-uws-extensions","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency, required for adapter integration","package":"svelte-adapter-uws","optional":false}],"imports":[{"note":"ESM-only package; CommonJS require will fail.","wrong":"const redisExtensions = require('svelte-adapter-uws-extensions').redisExtensions","symbol":"redisExtensions","correct":"import { redisExtensions } from 'svelte-adapter-uws-extensions'"},{"note":"Named export is camelCase, not PascalCase.","wrong":"import { PostgresExtensions } from 'svelte-adapter-uws-extensions'","symbol":"postgresExtensions","correct":"import { postgresExtensions } from 'svelte-adapter-uws-extensions'"},{"note":"createAdapter is part of the base adapter package, not extensions.","wrong":"import { createAdapter } from 'svelte-adapter-uws-extensions'","symbol":"createAdapter","correct":"import { createAdapter } from 'svelte-adapter-uws'"}],"quickstart":{"code":"import { redisExtensions } from 'svelte-adapter-uws-extensions';\nimport { createAdapter } from 'svelte-adapter-uws';\nimport Redis from 'ioredis';\n\nconst redis = new Redis(process.env.REDIS_URL ?? '');\nconst extensions = redisExtensions({\n  redis,\n  prefix: 'myapp',\n});\n\nexport default createAdapter({\n  extensions: [extensions],\n});","lang":"typescript","description":"Initialize Redis-based extensions (pub/sub, presence, replay, rate limit, groups) and attach them to the SvelteKit adapter."},"warnings":[{"fix":"Set \"type\": \"module\" in package.json or use .mjs files. Upgrade Node to v22+.","message":"Package is ESM-only and requires Node >=22.","severity":"breaking","affected_versions":">=0.0.0"},{"fix":"Always pass a configured Redis or PG client instance.","message":"redisExtensions and postgresExtensions must be called with required options; missing 'redis' or 'pg' client throws runtime error.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Only create one extension instance per app, or use distinct prefixes.","message":"Extensions are applied globally within the adapter; using multiple instances may cause conflicts.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Use 'prefix' instead of 'channelPrefix'.","message":"Option 'channelPrefix' renamed to 'prefix' in v0.5.0.","severity":"deprecated","affected_versions":"<0.5.0"}],"env_vars":null,"search_vec":"'0.5.10':36 '0.5.8':67 '22':59 'adapt':3,10,51,65 'back':17 'buffer':22 'chang':30 'current':32 'databas':29 'depend':62 'direct':56 'distribut':19 'extens':5,6 'featur':18 'group':27 'integr':46 'javascript':68 'lifecycl':52 'limit':26 'manag':44 'month':39 'nativ':47 'node':58 'notif':31 'peer':61 'postgr':16,73 'postgres-back':15 'presenc':23,76 'provid':12 'pub/sub':20 'pubsub':74 'rate':25 'redi':13,72 'releas':40 'replay':21 'requir':57 'rough':38 'stabl':33 'standalon':42 'svelt':2,9,64,69 'svelte-adapter-uw':8,63 'svelte-adapter-uws-extens':1 'sveltekit':49,70 'track':24 'unlik':41 'use':54 'uw':4,11,66 'uwebsocket':71 'uwebsockets.js':55 'version':34 'websocket':43,75","created_at":"2026-06-05T17:02:33.487431+00:00","updated_at":"2026-06-05T17:02:33.487431+00:00","problems":[{"fix":"Use named import: import { redisExtensions } from 'svelte-adapter-uws-extensions'","cause":"Importing default export instead of named export.","error":"TypeError: redisExtensions is not a function"},{"fix":"Install svelte-adapter-uws: npm install svelte-adapter-uws","cause":"Peer dependency svelte-adapter-uws is missing.","error":"Error: Cannot find module 'svelte-adapter-uws'"},{"fix":"Start Redis or provide correct REDIS_URL environment variable.","cause":"Redis server is not running or reachable.","error":"Redis connection refused: connect ECONNREFUSED 127.0.0.1:6379"}],"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":"https://github.com/lanteanio/svelte-adapter-uws-extensions#readme","github":"https://github.com/lanteanio/svelte-adapter-uws-extensions","docs":null,"changelog":null,"pypi":null,"npm":"svelte-adapter-uws-extensions","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-05","next_check":"2026-09-03","install_tag":null}}