No description
Find a file
2014-10-24 16:12:16 +02:00
extras Initial 2014-10-16 20:01:43 +02:00
transfersh-server small tweaks 2014-10-24 16:08:03 +02:00
transfersh-web samples tweak 2014-10-24 16:12:16 +02:00
.bowerrc several small improvements 2014-10-16 20:48:07 +02:00
.gitignore added trnasfersh-web/static to .gitignore 2014-10-24 16:01:44 +02:00
.jshintrc Initial 2014-10-16 20:01:43 +02:00
.travis.yml Initial 2014-10-16 20:01:43 +02:00
bower.json Fixed bower dependencies 2014-10-20 16:50:03 +02:00
Gruntfile.js added trnasfersh-web/static to .gitignore 2014-10-24 16:01:44 +02:00
LICENSE Initial 2014-10-16 20:04:20 +02:00
package.json selection bg 2014-10-20 20:55:49 +02:00
README.md implemented (alternate) storage providers, local file also possible now 2014-10-20 13:38:40 +02:00
Vagrantfile Initial 2014-10-16 20:01:43 +02:00

transfer.sh

Easy and fast file sharing from the command-line. This code contains the server with everything you need to create your own instance. Transfer.sh currently runs on top of Amazon S3. Other storage types will be added shortly.

Build Status

Usage

Upload:
$ curl --upload-file ./hello.txt https://transfer.sh/hello.txt

Encrypt & upload:
$ cat /tmp/hello.txt|gpg -ac -o-|curl -X PUT --upload-file "-" https://transfer.sh/test.txt

Download & decrypt:
$ curl https://transfer.sh/1lDau/test.txt|gpg -o- > /tmp/hello.txt

Upload to virustotal:
$ curl -X PUT --upload-file nhgbhhj https://transfer.sh/test.txt/virustotal

Add alias to .bashrc or .zshrc:
===
transfer() {
    # write to output to tmpfile because of progress bar
    tmpfile=$( mktemp -t transfer )
    curl --progress-bar --upload-file $1 https://transfer.sh/$(basename $1) >> $tmpfile;
    cat $tmpfile;
    rm -f $tmpfile;
}

alias transfer=transfer
===
$ transfer test.txt

Development

npm install
bower install

go get github.com/PuerkitoBio/ghost/handlers
go get github.com/gorilla/mux
go get github.com/dutchcoders/go-clamd
go get github.com/goamz/goamz/s3
go get github.com/goamz/goamz/aws
go get github.com/golang/gddo/httputil/header
go get github.com/kennygrant/sanitize

grunt serve
grunt build

go run transfersh-server/*.go -provider=local --port 8080 --temp=/tmp/ --basedir=/tmp/ 

Build

go build -o transfersh-server *.go

Contributions

Contributions are welcome.

Creators

Remco Verhoef

Uvis Grinfelds

Code and documentation copyright 2011-2014 Remco Verhoef. Code released under the MIT license.