{"bin":{"network":"bin/network.js","tracker":"bin/tracker.js","publisher":"bin/publisher.js","subscriber":"bin/subscriber.js"},"bugs":{"url":"https://github.com/streamr-dev/network-monorepo/issues"},"dist":{"shasum":"87630dacfcfb4eb2566ce0ef24b037a02c189299","tarball":"https://registry.npmjs.org/streamr-network/-/streamr-network-30.0.2-alpha.0.tgz","fileCount":199,"integrity":"sha512-/5MY6mZ5njFMhyUSfwBTFHTtJ9a6apwsZu0pgL+9LAHMeYbfdTjkY6eLftMdd8CV0rcuvNKPD1MJAG04Ieshfg==","signatures":[{"sig":"MEQCIHLNvjsnjBfumJEelDlo3rtfVDeoCP5FiRS5eet+Gub6AiA1w8VpTAXQ+MuL0J3lXag3MdFIk0ssKZlSYmxpd8shig==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7907184},"main":"dist/src/composition.js","name":"streamr-network","types":"dist/src/composition.d.ts","author":{"name":"Streamr Network AG","email":"contact@streamr.network"},"readme":"<p align=\"center\">\n  <a href=\"https://streamr.network\">\n    <img alt=\"Streamr\" src=\"https://raw.githubusercontent.com/streamr-dev/network-monorepo/main/packages/client/readme-header-img.png\" width=\"1320\" />\n  </a>\n</p>\n\n# streamr-network\n\n[![Build Status](https://img.shields.io/github/workflow/status/streamr-dev/network/Eslint,%20Test%20and%20Publish/master)](https://github.com/streamr-dev/network/actions)\n[![npm release](https://img.shields.io/npm/v/streamr-network?style=flat)](https://www.npmjs.com/package/streamr-network)\n[![GitHub stars](https://img.shields.io/github/stars/streamr-dev/network.svg?style=flat&label=Star&maxAge=2592000)](https://github.com/streamr-dev/network/)\n[![Discord Chat](https://img.shields.io/discord/801574432350928907.svg?label=Discord&logo=Discord&colorB=7289da)](https://discord.gg/FVtAph9cvz)\n\n\nAn extendible implementation of the server-side\n[Streamr Protocol](https://github.com/streamr-dev/streamr-specs/blob/master/PROTOCOL.md) logic written in TypeScript.\nThe package mostly acts as a library for other packages wishing to implement a broker node, but additionally\nprovides a full tracker executable, and a stripped-down network node executable.\n\n\nThe primary executable for running a broker node in the Streamr Network resides in the\n[streamr-broker](https://github.com/streamr-dev/broker) package. Although _streamr-network_ contains a\nfully-operational minimal network node implementation, we recommend running the node executable found in\n_streamr-broker_ as it includes useful client-facing features for interacting with the Streamr Network.\n\nThe [wiki](https://github.com/streamr-dev/network/wiki) outlines the technical and architectural\ndecisions of the project. It provides thorough explanations of some the more involved features.\nA glossary is also included.\n\n[API Documentation](https://streamr-dev.github.io/network/)\n\n## Table of Contents\n- [Install](#install)\n- [Run](#run)\n- [Develop](#develop)\n- [Release](#release)\n\n## Install\n\nPrerequisites are [Node.js](https://nodejs.org/) `14.x` and npm version `>=6.14`.\n\nYou can install streamr-network as a library in your project using npm:\n\n```bash\nnpm install streamr-network --save\n```\n\nTo install streamr-network system-wide:\n```bash\nnpm install streamr-network --global\n```\n\n## Run\n\nRun an example network of 100 nodes (locally):\n\n    npm run network\n\n## Develop\n\nInstall dependencies:\n\n    npm ci\n\nRun the tests:\n\n    npm run test\n\nTo build project:\n\n    npm run build\n\nWe use [eslint](https://github.com/eslint/eslint) for code formatting:\n\n    npm run eslint\n\nCode coverage:\n\n    npm run coverage\n\n### Debug\n\nTo get all debug messages:\n\n    LOG_LEVEL=debug\n\n... or adjust debugging to desired level:\n\n    LOG_LEVEL=[debug|info|warn|error]\n\nTo disable all logs\n\n    NOLOG=true\n\n### Regenerate self-signed certificate fixture\nTo regenerate self signed certificate in `./test/fixtures` run:\n\n```bash\nopenssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 36500 -nodes -subj \"/CN=localhost\"\n```\n\n## Release\n\nPublishing to NPM is automated via Github Actions. Follow the steps below to publish stable (`latest`) or `beta`.\n\n### Publishing stable (latest)\n1. `git checkout master && git pull`\n2. Update version with either `npm version [patch|minor|major]`. Use semantic versioning\nhttps://semver.org/. Files package.json and package-lock.json will be automatically updated, and an appropriate git commit and tag created.\n3. `git push --follow-tags`\n4. Wait for Github Actions to run tests\n5. If tests passed, Github Actions will publish the new version to NPM\n\n### Publishing beta\n1. Update version with either `npm version [prepatch|preminor|premajor] --preid=beta`. Use semantic versioning\nhttps://semver.org/. Files package.json and package-lock.json will be automatically updated, and an appropriate git commit and tag created.\n2. `git push --follow-tags`\n3. Wait for Github Actions to run tests\n4. If tests passed, Github Actions will publish the new version to NPM\n","browser":"dist/streamr-network.js","license":"STREAMR NETWORK OPEN SOURCE LICENSE","scripts":{"pub":"node $NODE_DEBUG_OPTION bin/publisher.js","sub":"node $NODE_DEBUG_OPTION bin/subscriber.js","docs":"typedoc --options typedoc.js","test":"jest","build":"npm run prepare","clean":"jest --clearCache || true; rm -rf dist *.tsbuildinfo node_modules/.cache || true","pub-1":"node $NODE_DEBUG_OPTION bin/publisher.js --port=30323","pub-2":"node $NODE_DEBUG_OPTION bin/publisher.js --port=30333","sub-1":"node $NODE_DEBUG_OPTION bin/subscriber.js --port=30335","sub-2":"node $NODE_DEBUG_OPTION bin/subscriber.js --port=30345","eslint":"eslint --cache-location=node_modules/.cache/.eslintcache/ '*/**/*.{js,ts}'","network":"node $NODE_DEBUG_OPTION bin/network.js","prepare":"tsc -b tsconfig.node.json","tracker":"node $NODE_DEBUG_OPTION bin/tracker.js","coverage":"jest --coverage","test-unit":"jest test/unit","test-types":"tsc --noEmit -b ./tsconfig.json ","test-flakey":"jest test/flakey","test-browser":"npm run build-browser && karma start karma.config.js","build-browser":"webpack --mode=development --progress","prepublishOnly":"npm run clean && NODE_ENV=production tsc -b tsconfig.node.json && NODE_ENV=production webpack --mode=production","test-integration":"jest test/integration"},"_npmUser":{"name":"timoxley","email":"secoif@gmail.com"},"homepage":"https://github.com/streamr-dev/network-monorepo#readme","deprecated":"This build is misconfigured.","repository":{"url":"git+https://github.com/streamr-dev/network-monorepo.git","type":"git","directory":"packages/network"},"_npmVersion":"6.14.15","description":"Minimal and extendable implementation of the Streamr Network network node.","directories":{},"maintainers":[{"name":"kare","email":"kare.nuorteva@me.com"},{"name":"juhah","email":"juha.haavisto@streamr.com"},{"name":"fonty1","email":"mr.matto@gmail.com"},{"name":"hpihkala","email":"henri.pihkala@streamr.com"},{"name":"tumppi","email":"tuomas.koponen@streamr.com"},{"name":"timoxley","email":"secoif@gmail.com"},{"name":"harbu","email":"harbuzen@gmail.com"},{"name":"mariusz_io","email":"mariusz@mariusz.io"},{"name":"pzsavola","email":"petri.savolainen@spaceify.net"},{"name":"mmartinmo","email":"martin.moravek@streamr.com"},{"name":"juslesan","email":"santeri.juslenius@gmail.com"},{"name":"jtakalai","email":"juuso.takalainen@streamr.com"},{"name":"jwolff","email":"jwolff@isentropy.com"},{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"teogeb","email":"teo@streamr.com"},{"name":"samt1803","email":"samt1803@gmail.com"},{"name":"simppafi","email":"simo.santavirta@gmail.com"},{"name":"mirpo","email":"miroslavpokrovskiy@gmail.com"}],"_nodeVersion":"14.17.5","dependencies":{"ws":"^7.5.0","cors":"^2.8.5","heap":"^0.2.6","pino":"^6.11.3","uuid":"^8.3.2","lodash":"^4.17.21","morgan":"^1.10.0","@pm2/io":"^5.0.0","express":"^4.17.1","yallist":"^4.0.0","commander":"^7.2.0","websocket":"^1.0.34","bufferutil":"^4.0.3","geoip-lite":"^1.4.2","compression":"^1.7.4","pino-pretty":"^5.0.2","setimmediate":"^1.0.5","@types/morgan":"^1.9.3","utf-8-validate":"^5.0.5","node-datachannel":"^0.1.11","@types/compression":"^1.7.2","cancelable-promise":"^3.2.3","streamr-client-protocol":"^9.1.1","strict-event-emitter-types":"^2.0.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.5","karma":"^6.3.4","eslint":"^7.32.0","expect":"^27.0.2","ts-jest":"^27.0.5","ts-node":"^9.1.1","typedoc":"^0.22.5","webpack":"^5.58.2","electron":"^13.1.5","@types/ws":"^7.4.5","jest-mock":"^27.0.3","ts-loader":"^9.2.6","karma-jest":"^1.0.0-beta.0","typescript":"^4.4.4","@types/cors":"^2.8.12","@types/heap":"^0.2.28","@types/jest":"^27.0.2","@types/node":"^16.10.6","@types/pino":"^6.3.8","@types/uuid":"^8.3.1","jest-circus":"^27.2.5","webpack-cli":"^4.9.0","@types/lodash":"^4.14.175","browserify-fs":"^1.0.0","jest-extended":"^0.11.5","karma-jasmine":"^4.0.1","karma-webpack":"^5.0.0","patch-package":"^6.4.7","@types/express":"^4.17.13","@types/yallist":"^4.0.1","karma-electron":"^7.0.0","path-browserify":"^1.0.1","@types/lru-cache":"^5.1.0","@types/websocket":"^1.0.3","electron-rebuild":"^2.3.5","@jest/fake-timers":"^27.0.5","@types/geoip-lite":"^1.4.1","source-map-loader":"^3.0.0","@types/pino-pretty":"^4.7.0","console-browserify":"^1.2.0","streamr-test-utils":"^2.0.0","@streamr/dev-config":"^1.0.0","karma-spec-reporter":"^0.0.32","node-module-polyfill":"^1.0.1","eslint-plugin-promise":"^5.1.0","karma-chrome-launcher":"^3.1.0","eslint-config-streamr-ts":"^4.0.1","@typescript-eslint/parser":"^5.0.0","node-polyfill-webpack-plugin":"^1.1.4","@typescript-eslint/eslint-plugin":"^5.0.0"},"optionalDependencies":{"bufferutil":"^4.0.3","pino-pretty":"^5.0.2","utf-8-validate":"^5.0.5"},"_npmOperationalInternal":{"tmp":"tmp/streamr-network_30.0.2-alpha.0_1634571597984_0.6252592891224698","host":"s3://npm-registry-packages"},"_id":"streamr-network@30.0.2-alpha.0","version":"30.0.2-alpha.0"}