{"_id":"@cardananium/meerkat","_rev":"2-88c2733c4b593b2d4846187030fce579","name":"@cardananium/meerkat","dist-tags":{"latest":"1.0.18"},"versions":{"1.0.17":{"name":"@cardananium/meerkat","version":"1.0.17","keywords":["WebTorrent","Peer to peer","WebRTC"],"author":{"name":"Fabian Bormann"},"license":"Apache-2.0","_id":"@cardananium/meerkat@1.0.17","maintainers":[{"name":"lisicky","email":"lisickyzheka@gmail.com"}],"homepage":"https://github.com/fabianbormann/meerkat#readme","bugs":{"url":"https://github.com/fabianbormann/meerkat/issues"},"dist":{"shasum":"60c34c1809b3ef488c5e736865d6b39374f8a886","tarball":"https://registry.npmjs.org/@cardananium/meerkat/-/meerkat-1.0.17.tgz","fileCount":3,"integrity":"sha512-yNMR/ExZU+36b99/A97TySKH18MJpTdQjydjELiHCXRL2wFFu5ORtlrMJ64u0I36hsxBJQ2q1b5uHvZImU4LgA==","signatures":[{"sig":"MEUCIQD5HF7JlsunQxZg26a6+66a61p8+grWj3I0GWQEippiCwIgRBdpVGHHvsN5RR7hrSLEIQAN67aK+J0dzII2yU1C7yI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14827},"main":"dist/meerkat.min.js","types":"dist/meerkat.d.ts","module":"dist/meerkat.min.js","gitHead":"7f10837764d5925a4290cc4370fa314b5511dab0","scripts":{"test":"npm run build && cypress run","build":"webpack && tsc --emitDeclarationOnly","clean":"rm -rf dist"},"_npmUser":{"name":"lisicky","email":"lisickyzheka@gmail.com"},"overrides":{"ip":"@webpod/ip"},"repository":{"url":"git+https://github.com/fabianbormann/meerkat.git","type":"git"},"_npmVersion":"10.5.0","description":"Browser-to-browser networking built on WebTorrent","directories":{},"_nodeVersion":"21.7.3","dependencies":{"bs58":"^6.0.0","bs58check":"^4.0.0","tweetnacl":"^1.0.3","@webpod/ip":"^0.6.1","webtorrent":"^2.8.4","vm-browserify":"^1.1.2","@rvagg/ripemd160":"^2.2.4","@babel/plugin-syntax-dynamic-import":"^7.8.3"},"_hasShrinkwrap":false,"devDependencies":{"util":"^0.12.5","buffer":"^6.0.3","cypress":"^13.16.0","process":"^0.11.10","webpack":"^5.96.1","browsify":"^0.0.4","typescript":"^5.7.2","@babel/core":"^7.26.0","stream-http":"^3.2.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","path-browserify":"^1.0.1","@types/bs58check":"^2.1.2","@types/ripemd160":"^2.0.3","https-browserify":"^1.0.0","@babel/preset-env":"^7.26.0","@types/webtorrent":"^0.110.0","crypto-browserify":"^3.12.1","stream-browserify":"^3.0.0","clean-webpack-plugin":"^4.0.0","@babel/preset-typescript":"^7.26.0"},"_npmOperationalInternal":{"tmp":"tmp/meerkat_1.0.17_1762957614259_0.9681330912189527","host":"s3://npm-registry-packages-npm-production"}},"1.0.18":{"name":"@cardananium/meerkat","version":"1.0.18","description":"Browser-to-browser networking built on WebTorrent","main":"dist/meerkat.min.js","module":"dist/meerkat.min.js","scripts":{"build":"webpack && tsc --emitDeclarationOnly","test":"npm run build && cypress run","clean":"rm -rf dist"},"repository":{"type":"git","url":"git+https://github.com/fabianbormann/meerkat.git"},"keywords":["WebTorrent","Peer to peer","WebRTC"],"types":"dist/meerkat.d.ts","author":{"name":"Fabian Bormann"},"license":"Apache-2.0","bugs":{"url":"https://github.com/fabianbormann/meerkat/issues"},"homepage":"https://github.com/fabianbormann/meerkat#readme","devDependencies":{"@babel/core":"^7.26.0","@babel/preset-env":"^7.26.0","@babel/preset-typescript":"^7.26.0","@types/bs58check":"^2.1.2","@types/ripemd160":"^2.0.3","@types/webtorrent":"^0.110.0","babel-loader":"^9.2.1","browsify":"^0.0.4","buffer":"^6.0.3","clean-webpack-plugin":"^4.0.0","crypto-browserify":"^3.12.1","cypress":"^13.16.0","https-browserify":"^1.0.0","path-browserify":"^1.0.1","process":"^0.11.10","stream-browserify":"^3.0.0","stream-http":"^3.2.0","typescript":"^5.7.2","util":"^0.12.5","webpack":"^5.96.1","webpack-cli":"^5.1.4"},"dependencies":{"@babel/plugin-syntax-dynamic-import":"^7.8.3","@rvagg/ripemd160":"^2.2.4","@webpod/ip":"^0.6.1","bs58":"^6.0.0","bs58check":"^4.0.0","tweetnacl":"^1.0.3","vm-browserify":"^1.1.2","webtorrent":"^2.8.4"},"overrides":{"ip":"@webpod/ip"},"_id":"@cardananium/meerkat@1.0.18","gitHead":"ee0eb7daf5c902694ae5acc406c5bb58698e2de2","_nodeVersion":"21.7.3","_npmVersion":"10.5.0","dist":{"integrity":"sha512-8nrXyOiVG5Nlz2O3cNlGRX1ttvSxt87ijaW/j0Zi6KF9TCyeqKY3EuCsKb3TJXX+Z/Bi/kW9wdz8unQCFTwrdQ==","shasum":"db56ff0876d9e80183dfc1b20c5710e74e8ef686","tarball":"https://registry.npmjs.org/@cardananium/meerkat/-/meerkat-1.0.18.tgz","fileCount":10,"unpackedSize":4165247,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCPqtixxdwcJTMOmf1YbbaHeKxeK9XnseVF1OT6FsZVCwIhAJXXhUfjOvc51/lC59+rc6BpRf8UmT3JDz/PM9RZ9Wfu"}]},"_npmUser":{"name":"lisicky","email":"lisickyzheka@gmail.com"},"directories":{},"maintainers":[{"name":"lisicky","email":"lisickyzheka@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/meerkat_1.0.18_1762959634161_0.002828994431006704"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-12T14:26:54.125Z","modified":"2025-11-12T15:00:34.651Z","1.0.17":"2025-11-12T14:26:54.430Z","1.0.18":"2025-11-12T15:00:34.448Z"},"bugs":{"url":"https://github.com/fabianbormann/meerkat/issues"},"author":{"name":"Fabian Bormann"},"license":"Apache-2.0","homepage":"https://github.com/fabianbormann/meerkat#readme","keywords":["WebTorrent","Peer to peer","WebRTC"],"repository":{"type":"git","url":"git+https://github.com/fabianbormann/meerkat.git"},"description":"Browser-to-browser networking built on WebTorrent","maintainers":[{"name":"lisicky","email":"lisickyzheka@gmail.com"}],"readme":"# Meerkat\n\n<p align=\"left\">\n<img alt=\"Tests\" src=\"https://img.shields.io/github/actions/workflow/status/fabianbormann/meerkat/test.yml?label=Release&style=for-the-badge\" />\n<img alt=\"Release\" src=\"https://img.shields.io/github/actions/workflow/status/fabianbormann/meerkat/release.yml?label=Release&style=for-the-badge\" />\n<img alt=\"Bundle\" src=\"https://img.shields.io/github/actions/workflow/status/fabianbormann/meerkat/bundle.yml?label=Release&style=for-the-badge\" />\n<a href=\"https://conventionalcommits.org\"><img alt=\"conventionalcommits\" src=\"https://img.shields.io/badge/Conventional%20Commits-1.0.0-%23FE5196?logo=conventionalcommits&style=for-the-badge\" /></a>\n</p>\n\n\nMeerkat aims to be a typescript and webpack 5 friendly re-implementation of Bugout: A browser-to-browser networking built on WebTorrent\n\n## 🚀 Getting Started\n\n### NPM\n\n```zsh\nnpm i @fabianbormann/meerkat\n```\n\n### Broswer\n\n```html\n<script src=\"https://fabianbormann.github.io/meerkat/latest/meerkat.min.js\"></script>\n<script>\n  const meerkat = new Meerkat({  ... });\n</script>\n```\n\n## 🤖 Use Meerkat as a Server\n\n```js\nimport Meerkat from '@fabianbormann/meerkat';\n\nconst meerkat = new Meerkat({ seed: localStorage['bugout-demo-server-seed'] });\nlocalStorage['meerkat-server-seed'] = meerkat.seed;\n\nlet connected = false;\nmeerkat.on('connections', (clients) => {\n  if (clients === 0 && connected === false) {\n    connected = true;\n    console.log('[info]: server ready');\n  }\n  console.log(`[info]: ${clients} clients connected`);\n});\n\nmeerkat.register('hello', (address, args, callback) => {\n  console.log(\n    `[info]: rpc call invoked by address ${address} into window.cardano`\n  );\n  callback('hello world');\n});\n\nconsole.log(`Share this address ${meerkat.address} with your clients`);\n```\n\n## 🥸 Use Meerkat as a Client\n\n```js\nimport Meerkat from '@fabianbormann/meerkat';\n\nconst meerkat = new Meerkat({ identifier: 'YOUR_SERVER_ADDRESS' });\n\nmeerkat.on('server', () => {\n  console.log('[info]: connected to server');\n  meerkat.rpc('YOUR_SERVER_ADDRESS', 'hello', {}, (response) =>\n    console.log(response)\n  );\n});\n```\n","readmeFilename":"README.md"}