{
    "name": "node-red-contrib-nostr",
    "version": "0.2.2",
    "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": "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/ 2>/dev/null || true) && 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 .",
        "lint:fix": "eslint . --fix",
        "prepublishOnly": "npm run lint && npm run test && npm run build"
    },
    "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-monitor.json"
        }
    },
    "dependencies": {
        "@noble/curves": "^2.0.1",
        "@noble/hashes": "^2.0.1",
        "bech32": "^2.0.0",
        "nostr-tools": "^2.23.3",
        "nostr-websocket-utils": "file:../nostr-websocket-utils",
        "ws": "^8.19.0"
    },
    "devDependencies": {
        "@eslint/js": "^10.0.1",
        "@types/node": "^22.19.15",
        "@types/node-red": "^1.3.5",
        "@types/ws": "^8.18.1",
        "@typescript-eslint/eslint-plugin": "^8.56.0",
        "@typescript-eslint/parser": "^8.56.0",
        "@vitest/coverage-v8": "^4.0.18",
        "@vitest/ui": "^4.0.18",
        "eslint": "^10.0.3",
        "node-red": "^4.1.5",
        "node-red-node-test-helper": "^0.3.6",
        "typescript": "^5.9.3",
        "vitest": "^4.0.18"
    },
    "engines": {
        "node": ">=18.0.0"
    },
    "repository": {
        "type": "git",
        "url": "git+https://github.com/HumanjavaEnterprises/node-red-contrib-nostr.git"
    },
    "bugs": {
        "url": "https://github.com/HumanjavaEnterprises/node-red-contrib-nostr/issues"
    },
    "homepage": "https://github.com/HumanjavaEnterprises/node-red-contrib-nostr#readme"
}
