UNPKG

nostr-websocket-utils

Version:

Robust WebSocket utilities for Nostr applications with automatic reconnection, supporting both ESM and CommonJS. Features channel-based messaging, heartbeat monitoring, message queueing, and comprehensive error handling with type-safe handlers.

93 lines (92 loc) 2.66 kB
{ "name": "nostr-websocket-utils", "version": "0.3.13", "description": "Robust WebSocket utilities for Nostr applications with automatic reconnection, supporting both ESM and CommonJS. Features channel-based messaging, heartbeat monitoring, message queueing, and comprehensive error handling with type-safe handlers.", "main": "./dist/cjs/index.js", "module": "./dist/index.js", "types": "./dist/index.d.ts", "type": "module", "exports": { ".": { "types": "./dist/index.d.ts", "import": "./dist/index.js", "require": "./dist/cjs/index.js", "browser": "./dist/browser/nostr-websocket-utils.min.js" }, "./crypto": { "types": "./dist/crypto/index.d.ts", "import": "./dist/crypto/index.js", "require": "./dist/cjs/crypto/index.js" } }, "scripts": { "build": "npm run build:ts && npm run build:browser", "build:ts": "tsc && tsc -p tsconfig.cjs.json", "build:browser": "webpack", "test": "vitest", "test:coverage": "vitest run --coverage", "lint": "eslint src --ext .ts", "prepare": "npm run build", "prepublishOnly": "npm test && npm run lint", "docs": "typedoc", "docs:watch": "typedoc --watch", "predeploy": "npm run build && npm run docs" }, "keywords": [ "nostr", "websocket", "typescript", "esm", "commonjs", "dual-module", "nostr-protocol", "websocket-client", "reconnection", "heartbeat", "message-queue", "type-safe", "browser" ], "author": "vveerrgg", "license": "MIT", "repository": { "type": "git", "url": "git+https://github.com/HumanjavaEnterprises/nostr-websocket-utils.git" }, "bugs": { "url": "https://github.com/HumanjavaEnterprises/nostr-websocket-utils/issues" }, "homepage": "https://github.com/HumanjavaEnterprises/nostr-websocket-utils#readme", "dependencies": { "@types/uuid": "^10.0.0", "nostr-crypto-utils": "^0.4.12", "pino": "^8.17.2", "uuid": "^11.0.3", "ws": "^8.16.0" }, "devDependencies": { "@types/node": "^20.10.6", "@types/ws": "^8.5.10", "@typescript-eslint/eslint-plugin": "^6.16.0", "@typescript-eslint/parser": "^6.16.0", "@vitest/coverage-v8": "^1.6.0", "eslint": "^8.56.0", "ts-loader": "^9.5.1", "typedoc": "^0.27.5", "typedoc-plugin-markdown": "^4.3.2", "typescript": "^5.3.3", "vitest": "^1.6.0", "webpack": "^5.89.0", "webpack-bundle-analyzer": "^4.10.1", "webpack-cli": "^5.1.4", "terser-webpack-plugin": "^5.3.9" }, "files": [ "dist", "README.md", "LICENSE" ], "publishConfig": { "access": "public" } }