Skip to content

Upload files

Don’t use GitHub, or just want something online quickly? Create an app from files on your computer. Shiplon builds and serves them exactly like an app from a repository: same build types, environment variables, health checks, HTTPS and custom domains.

  1. Click Create application at the top of any page.
  2. Under Where does the code come from?, choose Upload files.
  3. Drop a folder, files or a .zip onto the box, or use Choose folder or Choose files or .zip. Your browser prepares the files and shows how many there are and the size to upload. Nothing is sent yet.
  4. Click Continue. Shiplon looks at the files and suggests a build type, the same way it does for a repository. If the app is in a subfolder, enter it as the Root directory.
  5. Add any environment variables, then review and click Create and deploy.

The files are uploaded, checked, and the first deployment starts. You’re taken to its log.

  • Folders: everything inside, keeping the structure. If you pick or drop one folder, its contents are the top of your app (like the root of a repository).
  • A .zip file: it’s unpacked in your browser and its contents are uploaded. If everything in it sits in one folder, that folder becomes the top.
  • Left out automatically: node_modules and .git folders anywhere, and system files such as .DS_Store and Thumbs.db. Dependencies are installed during the build from your package.json and lockfile, so include the lockfile.
  • File permissions aren’t kept: browsers can’t read them, so every file arrives as a plain, non-executable file and links aren’t supported. If a Dockerfile build runs a script directly, add RUN chmod +x script.sh or call it as sh script.sh.

Your files go straight from your browser to private storage over HTTPS, through a link that is valid for 30 minutes and accepts only the exact size announced. They’re never public.

On the app’s page, under Deployments, click Upload new version, choose the files again (the whole app, not only what changed), and click Upload and deploy.

Uploaded-files apps don’t have a branch or Automatic deploys. Everything else works the same: you can redeploy or roll back any version whose files or image are still kept.

Limit
Size of one upload 250 MB, compressed. Text files usually compress to a fraction of their size; images and videos barely compress.
Files in one upload 200,000
Unfinished uploads per organization 5 at a time
Uploads per organization 100 a day

If an upload is too large, leave out what the build creates (such as dist or .next), videos, or other large files your app doesn’t need. Or connect GitHub, where the size limit doesn’t apply.

  • The files of the live version and the 5 before it are kept, so they can be redeployed.
  • Files that were uploaded but never deployed are deleted after 24 hours.
  • Deleting the app deletes all its uploaded files.

Rolling back uses the built image, not the files, so it works for the same versions as it does for GitHub apps.

An app keeps the source it was created with. To move an uploaded-files app to GitHub, create a new app from the repository, check it works, move your domains to it, then delete the old app.