Fast and lite file upload server (transfer.sh clone).
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Arthur Poulet f9a54de35d
Update version v0.5.1
4 months ago
public Fix image 8 months ago
spec Add auto-detect host and port of the server (by request) 1 year ago
src Fix date parsing 4 months ago
.gitignore Update to crystal v0.20, big file work 2 years ago
.travis.yml Initialize project (deps are broken yet) 3 years ago
Dockerfile Udate Dockerfile and relative readme 2 years ago
LICENSE Change LICENSE to GPL-3.0 2 years ago
Makefile Update kemalcr and crystal 8 months ago
README.md Update README 4 months ago
docker-compose.yml add Dockerfile and docker-compose config 3 years ago
sample.png Update README picture 7 months ago
shard.lock Fix some upload with browsers 8 months ago
shard.yml Update version v0.5.1 4 months ago

README.md

transfer_more

Fast and lite file upload server (transfer.sh clone).

screenshot

  • It’s a simple online file sharing.
  • Files older than 7 days are destroyed (configurable).
  • Recognize shebangs, magic numbers, …

Installation travis

Compatible crystal v0.27.0

From source

make        # build the app / deps
make test   # run unit test
make doc    # build the documentation

From AUR with yaourt

yaourt -S transfer-more

Usage

Run the Server

export TRANSFER_SSL_ENABLED=true    # true if the ssl is enabled, any other string is false
export TRANSFER_BASE_STORAGE="/tmp" # where the files will be kept
export TRANSFER_SECURE_SIZE=4       # how much characters to identify a file
export TRANSFER_STORAGE_DAYS=7      # how much time the files are kept
export TRANSFER_TIME_FORMAT="%y%m%d%H"
./transfer_more
./transfer_more --help
    -b HOST, --bind HOST             Host to bind (defaults to 0.0.0.0)
    -p PORT, --port PORT             Port to listen for connections (defaults to 3000)

Command line client

curl --progress-bar --upload-file file.mp4  http://domain/name.mp4

Inside a docker

If you are using docker-compose:

docker-compose build && docker-compose up

Else, you can do:

docker build -t transfer_more . && docker run transfer_more

ShareX template

{
  "Name": "Sceptique",
  "DestinationType": "ImageUploader, TextUploader, FileUploader, URLShortener",
  "RequestURL": "https://up.sceptique.eu/",
  "FileFormName": "file",
  "Headers": {
    "User-Agent": "curl"
  }
}

Development

TODO: Write development instructions here

Contributing

  1. Fork it ( https://git.sceptique.eu/Sceptique/transfer_more/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am ‘Add some feature’)
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • Nephos Arthur Poulet - creator, maintainer