node-red-contrib-nostr
Version:
Node-RED nodes for seamless Nostr protocol integration. Features robust WebSocket handling, event filtering, and NPUB-based routing. Built with TypeScript for type safety and extensive testing. Perfect for Nostr automation flows.
87 lines (86 loc) • 3.06 kB
JSON
{
"name": "node-red-contrib-nostr",
"version": "0.1.0",
"description": "Node-RED nodes for seamless Nostr protocol integration. Features robust WebSocket handling, event filtering, and NPUB-based routing. Built with TypeScript for type safety and extensive testing. Perfect for Nostr automation flows.",
"author": {
"name": "vveerrgg",
"url": "https://github.com/vveerrgg"
},
"type": "commonjs",
"scripts": {
"build": "tsc -p tsconfig.json",
"postbuild": "for dir in nostr-filter nostr-relay nostr-relay-config nostr-npub-filter; do mkdir -p dist/nodes/$dir && cp src/nodes/$dir/$dir.html dist/nodes/$dir/; done && cp -r src/nodes/*/icons dist/nodes/ && cp -r locales dist/ && cp -r examples dist/ && cp package.json dist/",
"prepare": "npm run build",
"test": "vitest run",
"test:watch": "vitest watch",
"test:coverage": "vitest run --coverage",
"test:ui": "vitest --ui",
"dev": "tsc -w",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix"
},
"main": "dist/nodes/index.js",
"files": [
"dist/**/*.js",
"dist/**/*.d.ts",
"dist/**/*.html",
"dist/**/icons/*",
"locales/**/*",
"examples/**/*"
],
"keywords": [
"node-red",
"nostr",
"websocket",
"relay",
"filter",
"npub",
"network",
"protocol"
],
"node-red": {
"version": ">=2.0.0",
"nodes": {
"nostr-relay-config": "dist/nodes/nostr-relay-config/nostr-relay-config.js",
"nostr-filter": "dist/nodes/nostr-filter/nostr-filter.js",
"nostr-npub-filter": "dist/nodes/nostr-npub-filter/nostr-npub-filter.js"
},
"examples": {
"Monitor Jack's Posts": "examples/jack-monitor.json",
"Track Multiple Users": "examples/multi-user-track.json"
}
},
"dependencies": {
"@noble/hashes": "^1.3.2",
"@noble/secp256k1": "^2.0.0",
"bech32": "^2.0.0",
"nostr-tools": "^1.17.0",
"nostr-websocket-utils": "^0.2.5",
"ws": "^8.16.0"
},
"devDependencies": {
"@types/node": "^20.4.5",
"@types/node-red": "^1.3.1",
"@types/ws": "^8.5.5",
"@typescript-eslint/eslint-plugin": "^6.2.0",
"@typescript-eslint/parser": "^6.2.0",
"@vitest/coverage-v8": "^1.1.3",
"@vitest/ui": "^1.1.3",
"eslint": "^8.45.0",
"node-red": "^4.0.8",
"node-red-node-test-helper": "^0.3.3",
"typescript": "^5.1.6",
"vitest": "^1.1.3"
},
"engines": {
"node": ">=14.0.0"
},
"repository": {
"type": "git",
"url": "git+https://github.com/HumanJavaEnterprise/node-red-contrib-nostr.git"
},
"bugs": {
"url": "https://github.com/HumanJavaEnterprise/node-red-contrib-nostr/issues"
},
"homepage": "https://github.com/HumanJavaEnterprise/node-red-contrib-nostr#readme"
}