A CLI for peer-to-peer file sharing using the Hypercore Protocol.

Overview

./logo.png

Hyp

[ Demo Video | Installation | Usage | Overview | Website ]

A CLI for peer-to-peer file sharing (and more) using the Hypercore Protocol.

📺 Watch The Demo Video

Installation

Requires nodejs 14+

npm install -g @hyperspace/cli

Usage

Command overview:

Usage: hyp <command> [opts...]

General Commands:

  hyp info [urls...] - Show information about one (or more) hypers.
  hyp seed {urls...} - Download and make hyper data available to the network.
  hyp unseed {urls...} - Stop making hyper data available to the network.
  hyp create {drive|bee} - Create a new hyperdrive or hyperbee.

  hyp beam {pass_phrase} - Send a stream of data over the network.

Hyperdrive Commands:

  hyp drive ls {url} - List the entries of the given hyperdrive URL.
  hyp drive mkdir {url} - Create a new directory at the given hyperdrive URL.
  hyp drive rmdir {url} - Remove a directory at the given hyperdrive URL.

  hyp drive cat {url} - Output the content of the given hyperdrive URL.
  hyp drive put {url} [content] - Write a file at the given hyperdrive URL.
  hyp drive rm {url} - Remove a file or (if --recursive) a folder at the given hyperdrive URL.

  hyp drive diff {source_path_or_url} {target_path_or_url} - Compare two folders in your local filesystem or in hyperdrives. Can optionally "commit" the difference.
  hyp drive sync {source_path_or_url} [target_path_or_url] - Continuously sync changes between two folders in your local filesystem or in hyperdrives.

  hyp drive http {url} - Host a hyperdrive as using HTTP on the localhost.

Hyperbee Commands:

  hyp bee ls {url} - List the entries of the given hyperbee URL.
  hyp bee get {url} - Get the value of an entry of the given hyperbee URL.
  hyp bee put {url} [value] - Set the value of an entry of the given hyperbee URL.
  hyp bee del {url} - Delete an entry of the given hyperbee URL.

Daemon Commands:

  hyp daemon status - Check the status of the hyperspace daemon.
  hyp daemon start - Start the hyperspace daemon.
  hyp daemon stop - Stop the hyperspace and mirroring daemons if active.

Aliases:

  hyp sync -> hyp drive sync
  hyp diff -> hyp drive diff
  hyp ls -> hyp drive ls
  hyp cat -> hyp drive cat
  hyp put -> hyp drive put

Overview

The Hypercore Protocol is a peer-to-peer network for sharing files and data. This command-line provides a convenient set of tools for accessing the network.

There are two common kinds of "Hypercores":

  • Hyperdrive A folder containing files.
  • Hyperbee A key-value database (similar to leveldb).

All data has a URL which starts with hyper://. A URL will look like this:

hyper://515bbbc1db2139ef27b6c45dfa418c8be6a1dec16823ea7cb9e61af8d060049e/

You use these URLs to access the hyper data over the peer-to-peer network. For example:

hyp ls hyper://515bbbc1db2139ef27b6c45dfa418c8be6a1dec16823ea7cb9e61af8d060049e/
hyp cat hyper://515bbbc1db2139ef27b6c45dfa418c8be6a1dec16823ea7cb9e61af8d060049e/file.txt
cat diagram.png | hyp put 515bbbc1db2139ef27b6c45dfa418c8be6a1dec16823ea7cb9e61af8d060049e/diagram.png

You can create a new hyperdrive or hyperbee using the create commands:

hyp create drive

You can then seed the hyper (or seed a hyper created by somebody else) using the seed command:

hyp seed hyper://515bbbc1db2139ef27b6c45dfa418c8be6a1dec16823ea7cb9e61af8d060049e/

To see what hypers you are currently seeding, run info:

hyp info

Documentation

The website documentation have a lot of useful guides:

Comments
  • Error: spawn UNKNOWN

    Error: spawn UNKNOWN

    I installed hyp and tried to use ls command from the README:

    hyp ls hyper://515bbbc1db2139ef27b6c45dfa418c8be6a1dec16823ea7cb9e61af8d060049e/
    

    image

    Other commands don't work either:

    image

    Context

    Node version: v14.15.2 Bash version: GNU bash, version 4.4.23(1)-release (x86_64-pc-msys)

    opened by jerrygreen 7
  • Syntax Error

    Syntax Error

    I have installed, removed and reinstalled hyp and still getting same error. When installing, I receive several warnings about deprecated components. However it finishes install. Once I enter hyp daemon start or any other command beginning with hyp, I get the following. OS is KDE Neon 5.20.

    /usr/local/lib/node_modules/@hyperspace/cli/bin/hyp.js:6
    import subcommand from 'subcommand'
           ^^^^^^^^^^
    
    SyntaxError: Unexpected identifier
        at Module._compile (internal/modules/cjs/loader.js:723:23)
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
        at Module.load (internal/modules/cjs/loader.js:653:32)
        at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
        at Function.Module._load (internal/modules/cjs/loader.js:585:3)
        at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
        at startup (internal/bootstrap/node.js:283:19)
        at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)```
    
    Here are the warnings I get while installing.
    
    ```$ sudo npm install -g @hyperspace/cli
    npm WARN deprecated [email protected]: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
    npm WARN deprecated [email protected]: "Please update to latest v2.3 or v2.2"
    npm WARN deprecated [email protected]: cross-spawn no longer requires a build toolchain, use it instead
    /usr/local/bin/hyp -> /usr/local/lib/node_modules/@hyperspace/cli/bin/hyp.js
    
    > [email protected] install /usr/local/lib/node_modules/@hyperspace/cli/node_modules/fd-lock
    > node-gyp-build```
    
    Any assistance would be greatly appreciated!
    
    
    opened by hiswillbedun 5
  • no-live vs. exit

    no-live vs. exit

    In our user experience research with the dat cli, we found that --exit was more immediately intuitive than --live=false, seems like that crept in again with the hyp cli!

    opened by okdistribute 5
  • Switch daemon to manual start rather than automatic

    Switch daemon to manual start rather than automatic

    Some folks integrating Hyper into Nix were having trouble with the CLI's automatic daemon init and requested we change to manual daemon start only. @mafintosh and I saw now problem with this, though it will need to be a major version bump.

    For general errors, hyp exits with code 1. For daemon-not-active, it exits with code 2. That may be useful for anybody orchestrating the daemon to know.

    opened by pfrazee 3
  • Confused by `hyp drive rm hyper://...` - Cannot delete synced drive.

    Confused by `hyp drive rm hyper://...` - Cannot delete synced drive.

    Examples from a computer where I synced to (ie source is on the other computer).

    hyp drive rm hyper://...
    Accessing network...
    Error: Cannot delete the root folder
    
    hyp drive rm -r hyper://...
    Accessing network...
    Error: Cannot delete the root folder
    
    hyp drive rmdir hyper://...
    Accessing network...
    Error: Cannot delete the root folder
    
    hyp drive rmdir -r hyper://...
    Error: URL is required
    

    I want to delete this drive from this computer but it seems that I cannot. What should I do?

    I'm curious to know where the drive is located on the filesystem (here macOS)?

    opened by Jolg42 3
  • Error: spawn UNKNOWN

    Error: spawn UNKNOWN

    When downloading via npm on Windows 10 and Node 14.5.0, I get the error: Error: spawn UNKNOWN for a lot of commands that I try.

    > hyp sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/
    Mirroring daemon started
    Error: spawn UNKNOWN
    

    I've attached a minimally-trimmed log of my installation and usage below (click to expand):

    Windows PowerShell
    Copyright (C) Microsoft Corporation. All rights reserved.
    
    Install the latest PowerShell for new features and improvements! https://aka.ms/PSWindows
    
    PS C:\Users\jemma> node
    Welcome to Node.js v14.5.0.
    Type ".help" for more information.
    >
    PS C:\Users\jemma> npm install -g @hyperspace/cli
    npm WARN deprecated [email protected]: cross-spawn no longer requires a build toolchain, use it instead
    les\@hyperspace\cli\bin\hyp.js
    
    > [email protected] install C:\Users\jemma\scoop\apps\nvm\current\nodejs\nodejs\node_modules\@hyperspace\cli\node_modules\fd-lock
    > node-gyp-build
    
    
    > [email protected] install C:\Users\jemma\scoop\apps\nvm\current\nodejs\nodejs\node_modules\@hyperspace\cli\node_modules\sodium-native
    > node-gyp-build "node preinstall.js" "node postinstall.js"
    
    
    > [email protected] install C:\Users\jemma\scoop\apps\nvm\current\nodejs\nodejs\node_modules\@hyperspace\cli\node_modules\utp-native
    > node-gyp-build
    
    
    > [email protected] install C:\Users\jemma\scoop\apps\nvm\current\nodejs\nodejs\node_modules\@hyperspace\cli\node_modules\leveldown
    > node-gyp-build
    
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.1.2 (node_modules\@hyperspace\cli\node_modules\chokidar\node_modules\fsevents):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
    
    + @hyperspace/[email protected]
    added 278 packages from 185 contributors in 50.725s
    PS C:\Users\jemma> hyp
    
    Usage: hyp <command> [opts...]
    
    General Commands:
    
      hyp info [urls...] - Show information about one (or more) hypers.
      hyp seed {urls...} - Download and make hyper data available to the network.
      hyp unseed {urls...} - Stop making hyper data available to the network.
      hyp create {drive|bee} - Create a new hyperdrive or hyperbee.
    
    Hyperdrive Commands:
    
      hyp drive ls {url} - List the entries of the given hyperdrive URL.
      hyp drive mkdir {url} - Create a new directory at the given hyperdrive URL.
      hyp drive rmdir {url} - Remove a directory at the given hyperdrive URL.
    
      hyp drive cat {url} - Output the content of the given hyperdrive URL.
      hyp drive put {url} [content] - Write a file at the given hyperdrive URL.
      hyp drive rm {url} - Remove a file or (if --recursive) a folder at the given hyperdrive URL.
    
    ves. Can optionally "commit" the difference.
      hyp drive sync {source_path_or_url} [target_path_or_url] - Continuously sync changes between two folders in your local filesystem or in hyperdrives.
    
      hyp drive http {url} - Host a hyperdrive as using HTTP on the localhost.
    
    Hyperbee Commands:
    
      hyp bee ls {url} - List the entries of the given hyperbee URL.
      hyp bee get {url} - Get the value of an entry of the given hyperbee URL.
      hyp bee put {url} [value] - Set the value of an entry of the given hyperbee URL.
      hyp bee del {url} - Delete an entry of the given hyperbee URL.
    
    Daemon Commands:
    
      hyp daemon status - Check the status of the hyperspace daemon.
      hyp daemon stop - Stop the hyperspace and mirroring daemons if active.
    
    Aliases:
    
      hyp sync -> hyp drive sync
      hyp diff -> hyp drive diff
      hyp ls -> hyp drive ls
      hyp cat -> hyp drive cat
      hyp put -> hyp drive put
    
      Learn more at https://github.com/hypecore-protocol/cli
    
    
    PS C:\Users\jemma> hyp daemon status
    Hyperspace v1.13.0
    Your address: 24.143.103.2:51735 (Hole-punchable)
    PS C:\Users\jemma> mkdir ManyDrives
    
    
        Directory: C:\Users\jemma
    
    
    Mode                 LastWriteTime         Length Name
    ----                 -------------         ------ ----
    d-----        12/11/2020  12:06 PM                ManyDrives
    
    
    PS C:\Users\jemma> cd .\ManyDrives\
    PS C:\Users\jemma\ManyDrives> hyp
    
    Usage: hyp <command> [opts...]
    
    General Commands:
    
      hyp info [urls...] - Show information about one (or more) hypers.
      hyp seed {urls...} - Download and make hyper data available to the network.
      hyp unseed {urls...} - Stop making hyper data available to the network.
    
    Hyperdrive Commands:
      hyp drive ls {url} - List the entries of the given hyperdrive URL.
      hyp drive mkdir {url} - Create a new directory at the given hyperdrive URL.
    
      hyp drive cat {url} - Output the content of the given hyperdrive URL.
      hyp drive put {url} [content] - Write a file at the given hyperdrive URL.
      hyp drive rm {url} - Remove a file or (if --recursive) a folder at the given hyperdrive URL.
    
      hyp drive diff {source_path_or_url} {target_path_or_url} - Compare two folders in your local filesystem or in hyperdrives. Can optionally "commit" the difference.
      hyp drive sync {source_path_or_url} [target_path_or_url] - Continuously sync changes between two folders in your local filesystem or in hyperdrives.
    
    
    Hyperbee Commands:
      hyp bee ls {url} - List the entries of the given hyperbee URL.
      hyp bee get {url} - Get the value of an entry of the given hyperbee URL.
      hyp bee put {url} [value] - Set the value of an entry of the given hyperbee URL.
    
    Daemon Commands:
      hyp daemon status - Check the status of the hyperspace daemon.
      hyp daemon stop - Stop the hyperspace and mirroring daemons if active.
    
      hyp sync -> hyp drive sync
      hyp ls -> hyp drive ls
      hyp cat -> hyp drive cat
      hyp put -> hyp drive put
    
      Learn more at https://github.com/hypecore-protocol/cli
    
    PS C:\Users\jemma\ManyDrives> hyp sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/
    Mirroring daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/ blog
    Mirroring daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> mkdir blog
    
    
        Directory: C:\Users\jemma\ManyDrives
    
    
    Mode                 LastWriteTime         Length Name
    ----                 -------------         ------ ----
    d-----        12/11/2020  12:07 PM                blog
    
    
    PS C:\Users\jemma\ManyDrives> hyp sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/ blog
    Mirroring daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f blog
    Mirroring daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e2^W^W^C
    PS C:\Users\jemma\ManyDrives> hyp drive sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f blog
    Mirroring daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp drive sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/ blog
    Mirroring daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> rmdir blog
    PS C:\Users\jemma\ManyDrives> hyp drive sync hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/ blog
    Mirroring daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp
    
    Usage: hyp <command> [opts...]
    
    General Commands:
    
      hyp info [urls...] - Show information about one (or more) hypers.
      hyp seed {urls...} - Download and make hyper data available to the network.
      hyp unseed {urls...} - Stop making hyper data available to the network.
    
    Hyperdrive Commands:
      hyp drive ls {url} - List the entries of the given hyperdrive URL.
      hyp drive mkdir {url} - Create a new directory at the given hyperdrive URL.
    
      hyp drive cat {url} - Output the content of the given hyperdrive URL.
      hyp drive put {url} [content] - Write a file at the given hyperdrive URL.
    
     the difference.
    s.
    
    
    Hyperbee Commands:
      hyp bee ls {url} - List the entries of the given hyperbee URL.
      hyp bee put {url} [value] - Set the value of an entry of the given hyperbee URL.
      hyp bee del {url} - Delete an entry of the given hyperbee URL.
    Daemon Commands:
    
      hyp daemon stop - Stop the hyperspace and mirroring daemons if active.
    
    
      hyp diff -> hyp drive diff
      hyp ls -> hyp drive ls
      hyp put -> hyp drive put
    
    
    Mirroring daemon started
    PS C:\Users\jemma\ManyDrives> hyp seed hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp daemon stop
    mirroring daemon stopped
    hyperspace daemon is running. Attempting to stop...
    hyperspace daemon stopped
    PS C:\Users\jemma\ManyDrives> hyp daemon
    Invalid command: daemon
    PS C:\Users\jemma\ManyDrives> hyp daemon status
    Daemon not active
    PS C:\Users\jemma\ManyDrives> hyp seed hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/
    Hyperspace daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp info
    Hyperspace daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp daemon status
    Daemon not active
    PS C:\Users\jemma\ManyDrives> hyp sync blog hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/
    Hyperspace daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp create drive
    Hyperspace daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp cat hyper://515bbbc1db2139ef27b6c45dfa418c8be6a1dec16823ea7cb9e61af8d060049e/file.txt
    Hyperspace daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> node --version
    v14.5.0
    PS C:\Users\jemma\ManyDrives> hyp cat hyper://515bbbc1db2139ef27b6c45dfa418c8be6a1dec16823ea7cb9e61af8d060049e/file.txt
    Hyperspace daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp sync blog hyper://b282d5efe484143816362d33b3f9b3ea45ecfb8a6ada97e278fdfdc6a725e22f/
    Hyperspace daemon started
    Error: spawn UNKNOWN
    PS C:\Users\jemma\ManyDrives> hyp daemon status
    Daemon not active
    PS C:\Users\jemma\ManyDrives> hyp daemon start
    Invalid command: daemon
    PS C:\Users\jemma\ManyDrives> hyp daemon seed
    Invalid command: daemon
    PS C:\Users\jemma\ManyDrives> hyp
    
    Usage: hyp <command> [opts...]
    
    General Commands:
    
      hyp info [urls...] - Show information about one (or more) hypers.
      hyp seed {urls...} - Download and make hyper data available to the network.
      hyp unseed {urls...} - Stop making hyper data available to the network.
      hyp create {drive|bee} - Create a new hyperdrive or hyperbee.
    
    Hyperdrive Commands:
    
      hyp drive ls {url} - List the entries of the given hyperdrive URL.
      hyp drive mkdir {url} - Create a new directory at the given hyperdrive URL.
      hyp drive rmdir {url} - Remove a directory at the given hyperdrive URL.
    
      hyp drive cat {url} - Output the content of the given hyperdrive URL.
      hyp drive put {url} [content] - Write a file at the given hyperdrive URL.
      hyp drive rm {url} - Remove a file or (if --recursive) a folder at the given hyperdrive URL.
    
      hyp drive diff {source_path_or_url} {target_path_or_url} - Compare two folders in your local filesystem or in hyperdrives. Can optionally "commit" the difference.
      hyp drive sync {source_path_or_url} [target_path_or_url] - Continuously sync changes between two folders in your local filesystem or in hyperdrives.
    
      hyp drive http {url} - Host a hyperdrive as using HTTP on the localhost.
    
    Hyperbee Commands:
    
      hyp bee ls {url} - List the entries of the given hyperbee URL.
      hyp bee get {url} - Get the value of an entry of the given hyperbee URL.
      hyp bee put {url} [value] - Set the value of an entry of the given hyperbee URL.
      hyp bee del {url} - Delete an entry of the given hyperbee URL.
    
    Daemon Commands:
    
      hyp daemon status - Check the status of the hyperspace daemon.
      hyp daemon stop - Stop the hyperspace and mirroring daemons if active.
    
    Aliases:
    
      hyp sync -> hyp drive sync
      hyp diff -> hyp drive diff
      hyp ls -> hyp drive ls
      hyp cat -> hyp drive cat
      hyp put -> hyp drive put
    
      Learn more at https://github.com/hypecore-protocol/cli
    
    bug 
    opened by fwip 3
  • add closing / to the returned hash-url

    add closing / to the returned hash-url

    1. for consistency, most(?) places, including beaker address bar, print/show hash-url with closing /, i.e.
    > hyp sync ./ `cat ./.hyper` -y
    Source: ./
    Target: hyper://4fe8d269555b9dbf639ec1c60f1860a5528f78ae9f10d14fe7d9c73796037ab2/
    Syncing...
    4fe8d2..b2: Announced to seed
    Synced
    
    1. visual insurance too – people copy-pasting it will be certain they got the entire url, and not just the first n-1 letters of the hash

    regexps parsing the output were likely only looking for hyper://\w+

    opened by dym-sh 2
  • Minimum node version not enforced

    Minimum node version not enforced

    I see that the cli requires node 14+ currently. Its great that it's documented in multiple places, but it's easy to enforce and provide a meaningful error message.

    I'll submit a PR.

    opened by blahah 2
  • Add copy command

    Add copy command

    The copy command is very similar to diff, but it doesn't compare contents. It also supports two new modes if a target isn't specified:

    1. If you're copying a local directory without a target, it will copy the directory into a new drive.
    2. If you're copying a drive without a target, it will copy the drive's contents into a new directory (named by the drive key).
    opened by andrewosh 2
  • --yes option for scripted use

    --yes option for scripted use

    For example, to run hyp sync in a cron job once every hour, it would help if hyp skips checking for confirmation (currently it asks Begin sync? [y/N]). Several command line tools have a -y/--yes or similar option to always assume the answer is yes. Could hyp get this too?

    opened by Treora 1
  • Error on bee create

    Error on bee create

    C:\Users\abusn>hyp create bee
    Bee Created: hyper://1a516a871719c7e9162368be8e945a47d60df42929f6027aff62493942f36e84
    events.js:292
          throw er; // Unhandled 'error' event
          ^
     
    Error: key is required
        at Object.encodingLength (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\hyperspace-mirroring-service\rpc\messages.js:52:34)
        at Parser.send (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\arpeecee\parser.js:138:24)
        at RPC._push (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\arpeecee\index.js:159:25)    at RPC._request (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\arpeecee\index.js:203:10)
        at Method.request (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\arpeecee\index.js:247:29)
        at HRPCServiceMirror.mirror (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\hyperspace-mirroring-service\rpc\index.js:63:25)
        at HyperspaceMirroringClient.mirror (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\hyperspace-mirroring-service\client.js:57:32)
        at command (file:///C:/Users/abusn/AppData/Roaming/npm/node_modules/@hyperspace/cli/lib/commands/create.js:25:32)
        at processTicksAndRejections (internal/process/task_queues.js:93:5)
        at async Object.obj.command (file:///C:/Users/abusn/AppData/Roaming/npm/node_modules/@hyperspace/cli/bin/hyp.js:101:7)
    Emitted 'error' event on HRPCSession instance at:
        at RPC.<anonymous> (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\hyperspace-mirroring-service\rpc\index.js:117:101)
        at RPC.emit (events.js:327:22)
        at WritableState.afterDestroy (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\streamx\index.js:439:19)
        at RPC._destroy (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\arpeecee\index.js:190:5)
        at WritableState.updateNonPrimary (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\streamx\index.js:187:16)
        at WritableState.update (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\streamx\index.js:172:70)
        at updateWriteNT (C:\Users\abusn\AppData\Roaming\npm\node_modules\@hyperspace\cli\node_modules\streamx\index.js:479:6)
        at processTicksAndRejections (internal/process/task_queues.js:79:21)
    
    bug 
    opened by pfrazee 1
  • installing cli by pnpm raises warning

    installing cli by pnpm raises warning

    Hello;

    I installed with pnpm install -g @hyperspace/cli and get that in the output:

     WARN  deprecated [email protected]: cross-spawn no longer requires a build toolchain, use it instead
     WARN  deprecated [email protected]: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
     ```
    opened by Ruulul 0
  • Cannot use full path for HYPERSPACE_SOCKET

    Cannot use full path for HYPERSPACE_SOCKET

    My expectation is hyperspace's socket env variable defines where the socket is created. However when the full path is defined, they command freezes when trying to start the daemon.

    HYPERSPACE_SOCKET="/tmp/mysock" hyp daemon start
    # Hyperspace daemon started
    # [freezes]
    
    opened by UnknownCypher 0
  • Error when syncing folder with symlink

    Error when syncing folder with symlink

    Creating a hyperdrive which contains a soft link returns an error.

    mkdir -p a/b
    touch a/file.txt
    (cd a/b; ln -s ../file.txt)
    hyp sync a
    # Syncing...
    # Comparing...
    # Error: Aborting file-tree comparison, a symlink or hardlink loop was detected at /b/file.txt
    

    However it works when using a differently named symlink.

    mkdir -p a/b
    touch a/file.txt
    (cd a/b; ln -s ../file.txt file2.txt)
    hyp sync a
    # Syncing...
    # Synced
    
    opened by UnknownCypher 0
  • Allow spawned daemon processes to remain running

    Allow spawned daemon processes to remain running

    I'm slightly perplexed as to how this used to work, but testing either way shows that the daemon processes spawned by hyp daemon start have a tendency to terminate if they are launched without disconnecting their stdio from the parent process.

    opened by specious 14
  • Add `alias` option

    Add `alias` option

    1. Trying to solve #1
    2. Having trouble while trying to run the code due to the fact that apparently it can't import ../lib/commands/alias.js. Not sure why. It is perfectly importing all the other files on the lib/commands folder. [Edit: this was solved.] image
    opened by Octalbyte 1
Owner
Hypercore Protocol
A fast, scalable, and secure peer-to-peer protocol for everyone
Hypercore Protocol
LinkFree CLI is a command line tool that helps you to create your LinkFree profile through CLI.

LinkFree CLI LinkFree CLI is a command line tool that helps you to create your LinkFree profile through CLI. Demo Using the CLI (Commands) Note First

Pradumna Saraf 32 Dec 26, 2022
Add stdin support to any CLI app that accepts file input

tmpin Add stdin support to any CLI app that accepts file input It pipes stdin to a temp file and spawns the chosen app with the temp file path as the

Sindre Sorhus 121 Oct 3, 2022
Node.js CLI tool to generate a set of favicons from a single input file.

This is a simple CLI tool to generate an optimized set of favicons from a single input file. Icons are optimized in terms of both size and quantity (n

null 6 Nov 11, 2022
Test your internet connection speed and ping using speedtest.net from the CLI

speed-test Test your internet connection speed and ping using speedtest.net from the CLI Install Ensure you have Node.js version 8+ installed. Then ru

Sindre Sorhus 3.8k Jan 7, 2023
:white_square_button: WhatsApp chat from commandline/console/cli using GoogleChrome puppeteer

Whatspup Use Whatsapp from commandline/console/cli using GoogleChrome puppeteer! ?? Features ✅ Send and receive messages ✅ Read Receipts ✅ Switch betw

Sarfraz Ahmed 343 Dec 1, 2022
DataENV is a cli tool that allows you to save data temporarily using your terminal.

DataEnv CLI Instllation npm install -g dataenv Usage Table of Contents LocalStorage npx dataenv save Parameters npx dataenv show Parameters npx dataen

PGamerX 2 Feb 5, 2022
Infinite Red's cutting edge React Native project boilerplate, along with a CLI, component/model generators, and more!

Ignite - the hottest React Native boilerplate Battle-tested React Native boilerplate The culmination of five years of constant React Native developmen

Infinite Red, Inc. 14.7k Dec 29, 2022
CLI tool for running Yeoman generators

yo What's Yeoman? Yeoman helps you to kickstart new projects, prescribing best practices and tools to help you stay productive. To do so, we provide a

Yeoman 3.6k Dec 30, 2022
Distributed, realtime CLI for live Node apps.

Vantage = CLI + SSH + REPL for your live node app. In one line: require("vantage")().listen(4000); What just happened? That's voodoo magic: show me th

dc 3.5k Dec 30, 2022
download torrents with node from the CLI

torrent Download torrents from the command line usage torrent <magnet link OR path to .torrent file> Download a torrent from a magnet link to torre

Max Ogden 619 Dec 26, 2022
:notes: Control iTunes via CLI

itunes-remote Control iTunes via your terminal ?? Using JXA via osascript via Node.js. Requirements Node.js (v0.12.7 or greater) Mac OS X (Yosemite 10

Michael Kühnel 422 Nov 19, 2022
Node.js Open CLI Framework. Built with 💜 by Heroku.

oclif: Node.JS Open CLI Framework ?? Description ?? Getting Started Tutorial ✨ Features ?? Requirements ?? CLI Types ?? Usage ?? Examples ?? Commands

oclif 8k Jan 4, 2023
Git commit CLI

commitme Based on this gist by @gustavopch Installation You can install this on your package using npm i -D commitme or run it once using npx commitme

Roz 7 Jun 6, 2021
An extension geared towards Spotify users with larger libraries; view all your playlists that contain a specific song with the click of a button. Designed for Spicetify (https://github.com/khanhas/spicetify-cli)

ViewPlaylistsWithSong An extension developed for Spicetify that allows you to view all the playlists in your library that contain a certain song. Idea

null 21 Dec 13, 2022
HMSC (How Much Stuffs CLI) analyst for your files and folders

HMSC ?? About HMSC (How Much Stuffs CLI) analyst for your files and folders ?? Screenshot ?? Requirements Node.js NPM ?? Installation $ npm i -g hmsc

Abdullah Veliyev 26 Jan 10, 2022
A C++ based command-line (CLI) program that lets you manage your tasks

COMMAND LINE INTERFACE TODO APP a command-line (CLI) program that lets you manage your tasks. The specification for this project is written down as te

Rahul Prabhakar 1 Dec 25, 2021
A CLI progam show teminal outputs as gradients.

GRADIENT-TERMINAL A CLI progam to display teminal outputs as gradients. Requirements For Installation, you will only need Node.js. Install $ git clone

Ritin George 34 Jan 3, 2023
Tasks Management CLI application with Nodejs, Mongodb, inquirer.js, and commander

Tasks CLI Tasks CLI is a program to manage your tasks in a database using terminal or console. This is a sample project for beginners Requirements Nod

Fazt Web 9 Nov 17, 2022