{"_id":"@coboxcoop/kappa-drive","_rev":"3-82bef7c952f2b4a2dc233ef448201eba","name":"@coboxcoop/kappa-drive","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"@coboxcoop/kappa-drive","version":"0.0.1","description":"a multiwriter peer to peer filesystem","main":"index.js","scripts":{"test":"istanbul cover tape test/**/*.test.js | tap-spec"},"author":{"name":"Karissa McKelvey"},"license":"MIT","dependencies":{"collect-stream":"^1.2.1","corestore":"github:coboxcoop/corestore#default-core-in-opts","hypercore-crypto":"^1.0.0","hyperdrive":"github:mafintosh/hyperdrive","kappa-core":"^4.0.0","kappa-view-kv":"^2.0.1","memdb":"^1.3.1","mountable-hypertrie":"^0.10.3","multifeed":"github:coboxcoop/multifeed#enable-custom-keypair-for-feeds","random-access-memory":"^3.1.1","through2":"^3.0.1"},"devDependencies":{"istanbul":"^0.4.5","mkdirp":"^0.5.1","pump":"^3.0.0","rimraf":"^2.6.3","tap-spec":"^5.0.0","tape":"^4.10.1","tape-plus":"^1.0.0","tmp":"^0.1.0"},"directories":{"test":"test"},"repository":{"type":"git","url":"git+https://github.com/coboxcoop/peer-fs.git"},"keywords":["kappa","peer-fs","kappa-drive","hyperdrive","dat","kappa-core","multiwriter"],"bugs":{"url":"https://github.com/coboxcoop/peer-fs/issues"},"homepage":"https://github.com/coboxcoop/peer-fs#readme","gitHead":"a5d55ca8577fa1a41aa3cc44281bc99716d3510e","_id":"@coboxcoop/kappa-drive@0.0.1","_nodeVersion":"11.12.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-PHZkI5F5S9tONk+Ty7PreLYt5ODCbIDRH9d7shmGJkIl/ydJfb9U91SgxEFMXQBVL4piT2iZMBCmALG3OvFs1g==","shasum":"b49f9690d11a959cf66a0c5e317b6f108f8ae53c","tarball":"https://registry.npmjs.org/@coboxcoop/kappa-drive/-/kappa-drive-0.0.1.tgz","fileCount":10,"unpackedSize":20001,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdQLS+CRA9TVsSAnZWagAAqloP/inI0T8RGo2B9aCMb0Vl\n4RHFKxvUOmSjIXFHjE5msSEQmEGcDFBVhgSuDT5MEKOHihn9CWKuivy4n6N3\npFOzTxxmbCy7zLEMLZZVM1nNVBb1x29POjMVe2e4/ACWACcYYF6kK6noqn+n\n88Tlr0Bv9Li73BMPBgRsNZU55au6GtJz6ok2hKg61h+3PwfY2aIymwAqd+yU\nfUy2OalnbmwkTucjt9JRe8TsGnm0oTI9SJvUEGXXi3g1dhQ6VWg7ir8JFxEI\n9B3YcKPTWfDV9e89LiRG4P3gY8ItLZWD+brwRVQ5oMWn++AQGe2n6JYGsOmi\nmlQPJitj0QQj+YUE8bc2+hh9W+ItIHg2YV/3+iPd+DBsBNAzPLcfnX/4sLl1\nKm5IFFqjFasETJ0/bfZRC/rw2J5jS/G6CmBGT6cl5CeLJLHc0JqvmRr/eeWV\nv7fnIvNPiqGGyY4X5AEjPNZLqmVTCTK1YOk8jNwy5nvdcedXmRTHB4UxDu+h\n6m73eLprfJGDDeuPI71suUKt+B+QxjwfWMwxDsWysM4bJV5bYYfwRqfCvdKC\nOQW22jGZfOz5lkV9wbA0C07Yt5IE8hZUlwOTlBUr7lWMbi2ZBROewPaQeJt6\nd2Ut5Wa+1JjsjQRb8E2oW8Tk2s0GLqorkcLL88rxFoaq2jW2XO8+GDJTDykz\nbYgs\r\n=br8Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGhQtBNO6i1uVyWWZx+aqcLf/wOiRlkJvgSAx0waIS9ZAiBGanxCpadcygDHghHM0D/pwliqz690erE1xJMcpZ5NQw=="}]},"maintainers":[{"name":"kyphae","email":"kieran@tenthousandthings.org.uk"}],"_npmUser":{"name":"kyphae","email":"kieran@tenthousandthings.org.uk"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/kappa-drive_0.0.1_1564521662170_0.08537763539999244"},"_hasShrinkwrap":false,"deprecated":"deprecated in favour of kappa-drive"}},"time":{"created":"2019-07-30T21:21:01.942Z","0.0.1":"2019-07-30T21:21:02.339Z","modified":"2022-04-04T23:54:02.124Z"},"maintainers":[{"email":"ameba23@systemli.org","name":"ameba23"},{"email":"kieran@tenthousandthings.org.uk","name":"kyphae"}],"description":"a multiwriter peer to peer filesystem","homepage":"https://github.com/coboxcoop/peer-fs#readme","keywords":["kappa","peer-fs","kappa-drive","hyperdrive","dat","kappa-core","multiwriter"],"repository":{"type":"git","url":"git+https://github.com/coboxcoop/peer-fs.git"},"author":{"name":"Karissa McKelvey"},"bugs":{"url":"https://github.com/coboxcoop/peer-fs/issues"},"license":"MIT","readme":"# peer-fs\n\nA multiwriter peer-to-peer filesystem. Supports [Hyperdrive V10](https://github.com/mafintosh/hyperdrive/).\n\n## Usage\n\nSee [test/index.test.js](test/index.test.js) for examples.\n\n## API\n\n#### ```var drive = KappaDrive(storage, key, opts)```\n\nReturns a [KappaCore](kappa-db/kappa-core) instance. Passes these options directly to that instance.\n\nIn addition, peerfs accepts the following optional arguments:\n\n* `resolveFork`: a function taking `values` of known versions of that file. If there are more than one here, there is a fork. By default, this returns the first item in the list. Overwrite this to get more fancy. \n\n#### ```drive.replicate()```\n\nReplicate between two `peer-fs` instances.\n\n#### ```drive.readFile(filename, cb)```\n\nRead asyncronously.\n\n#### ```drive.writeFile(filename, content, cb)```\n\nWrite asyncronously.\n\n#### ```drive.createWriteStream(filename, cb)```\n\nWrite to a stream.\n\n#### ```drive.createReadStream(filename, cb)```\n\nRead file from a stream.\n\n## License\n\nMIT\n\n## Credit\n\nHuge credit to [Karissa](https://github.com/karissa) for ideating and writing [peerfs](https://github.com/karissa/peerfs) and allowing us to run with it and complete the API.\n\n:black_heart: :purple_heart: :green_heart:\n\n#### TODO\n\n- [ ] Move all of the functions over from hyperdrive to the top constructor instance. (e.g., readdir, stat)\n- [ ] Improve performance and stability of index writes by using something other than JSON.\n- [ ] Allow resolveFork function to get access to the stat object of the file on that write so that it can make a more intelligent display or make better decisions about the fork\n- [ ] Allow forks to be unresolved cc @substack\n- [ ] When writing, in the link we should record the seq of the hyperdrive, and on `whoHasFile`, checkout to that seq if its not the latest\n","readmeFilename":"README.md"}