transfer-sh

    2.1.1 • Public • Published

    transfer-sh NPM Version Build Status Dependency Status JavaScript Style Guide Patreon donate button

    Node.js CLI tool for easy file sharing using Transfer.sh

    Install

    The easiest way to get transfer-sh is with npm:

    $ npm install -g transfer-sh
    

    CLI Usage

    $ transfer hello.txt
    

    Will return a link to the resource and automatically you'll have it copied to your clipboard.

    PS. transfer is an alias for transfer-sh.

    Encrypt a file using a password:

    $ transfer hello.txt -p s3cr3t
    

    Example

    var Transfer = require('transfer-sh')
     
    /* Encrypt and Upload */
    new Transfer('./Hello.md', {password: 's3cr3t'})
      .upload()
      .then(function (link) { console.log(link) })
      .catch(function (err) { console.log(err) })
     
    /* Decrypt */
    new Transfer('./Hello.enc', {password: 's3cr3t'})
      .decrypt('Output.md') // or writable stream
      .then(function (wStream) { console.log('Decrypted!') }) // it returns a writableStream
      .catch(function (err) { console.log(err) })
     

    NB.: The constructor accepts also a Readable stream as 1th param, in that case make sure to provide a name option.

    Options

    password: optional field, if provided will encrypt the file with aes-256-cbc no-salt and base64 encoded before the upload.

    You can then easily decrypt your file using transfer-sh itself:

    $ transfer -d hello.enc -p s3cr3t [-o output.txt]
    

    or the openssl util:

    $ openssl aes-256-cbc -d -a -nosalt -in <encrypted_file> -out <destination> -k <password>
    

    openssl params explanation:

    -d decrypt.

    -a to decode base64 (with line break). NB. The file is base64 encoded to be easy human-readable and to allow easy copy-paste.

    -nosalt The used node crypto lib by default doesn't apply any salt.

    -in input encrypted file.

    -out output decrypted file.

    -k password.

    Author

    Rocco Musolino (@roccomuso)

    LICENSE

    MIT

    Install

    npm i transfer-sh

    DownloadsWeekly Downloads

    56

    Version

    2.1.1

    License

    ISC

    Unpacked Size

    8.82 kB

    Total Files

    6

    Last publish

    Collaborators

    • roccomuso