Ship is a command line application that makes transferring files from a computer to a phone or another computer easy
Ship is Developed on macOS Catalina and should work on all platforms that python3 supports

Ship - The best way to move files between your devices | Product Hunt Embed

All platforms



pip uninstall shipapp


How to use (Basic)

  1. Type in the command and filename that you want to share.
    ship [FILENAME]
  2. Copy the url into another device browser (can be phone or computer).
    Make sure to click 'ctrl-c' to kill after usage
    Sun Jun 14 11:19:34 2020 Sharing Server Starts text -
  3. Download by clicking ‘Ship It’ and close the server by clicking Ctrl + c
    ^CSun Jun 14 11:21:58 2020 Sharing Server Stop -

Advanced Information

usage: ship [-h] [-p [port]] [-l] [-q] [-V] [file]

Send file to phone or other computers. Make sure to kill this process after completion
if your phone is having trouble reading QRcode use flag -q: ship -q [FILENAME]

positional arguments:
  file                  file to be shared

optional arguments:
  -h, --help            show this help message and exit
  -p [port], --port [port]
                        port to be shared on
  -l, --local           if flagged host address will be localhost/
  -q, --qrcode          if flagged qrcode will be in new tab
  -V, --version         show program's version number and exit


alpha release v0.0.4.0 (In development/unstable)

new -o, –open cli flag auto open browsers on host computer
Now Ship can fallback on an Empty port if port 9999 is being used
Ship will watch a file and will restart server with new file content
Ship can now be called from within Python as Shipapp.ShipIt

alpha release v0.0.3.0

new -l, –local cli flag: force port to localhost/
Whole codebase revamp/rewrite with better errors and comments
Whole design with use of external css
Now you can run multiple instance on Ship

alpha release v0.0.2.1

alpha release v0.0.2.0

full release on pypi
support for inline and new tab qrcodes
new -q, –qrcode cli flag: to display flag
new -V, -version cli flag: to show version
more readable errors
git clone installation is not long available

alpha release v0.0.1.6

help file update

alpha release v0.0.1.5

build dist errors

alpha release v0.0.1.4

float right on all templates

alpha release v0.0.1.3

build dist errors

alpha release v0.0.1.2

template decision error fixed
text template fixed
error raising error fixed

alpha release v0.0.1.1

initial release



Since the template are loaded in with python format method anything the uses curly braces will cause an error which include: any Javascript function, if statements, try - except blocks and embedded css.


Can only load in mimetypes defined in the standard package.