PsiTransfer

BSD-2-Clause
Platform
Docker Web
Licence
BSD-2-Clause Open source
PsiTransfer

PsiTransfer is a self-hosted file sharing service of the no-account kind: nobody registers, nobody logs in. You drop files into a bucket, pick how long the bucket should live, and hand out one link — the recipient opens it and downloads the contents. It replaces the paid side of services like WeTransfer with a Node.js application you run yourself, and the current release is 2.4.5 (October 2026).

What a transfer looks like

  • No accounts, no logins — neither the sender nor the recipient signs up for anything, which is what makes it usable for people outside your organisation.
  • Resumable uploads and downloads over tus.io, so a connection that drops mid-file does not mean starting again.
  • Large and numerous files — both directions are streamed to disk rather than buffered in memory, so file size is bounded by your storage, not by PHP-style upload limits.
  • Retention per bucket — from one hour to eight weeks, chosen at upload time, with the bucket and its files removed when the window closes.
  • One-time downloads — a bucket that self-destructs after the first retrieval, for credentials or a document meant for exactly one person.
  • Download everything as a ZIP or tar.gz — the recipient can take the whole bucket in one archive instead of clicking each file.
  • Password-protected buckets, with the download list encrypted in the browser using AES.
  • Modal-style previews for images and documents, so the recipient can check what a file is before saving it.

Sharing the link

The upload screen turns a finished transfer into three options: a QR code for a phone, an email draft, or the link copied to the clipboard. Buckets can also be given an explicit ID with the ?sid= query parameter, which is useful when a client expects a stable, recognisable address rather than a random one. The frontend is a small Vue application — under 100 kB gzipped — and the interface is responsive, so the same link works from a desktop browser or a phone.

Running it

The quickest install is the published Docker image, psitrax/psitransfer, with the data directory mounted as a volume that the container’s user (UID 1000) must be able to write to:

docker run -p 3000:3000 -e PSITRANSFER_ADMIN_PASS=secret -v $PWD/data:/data psitrax/psitransfer

A Node.js install from the source tree works as well; the container currently builds on Node 26. Configuration — retention options, file size ceiling, the admin password, storage path — is read from environment variables or a config file. Setting adminPass enables an /admin page that lists every bucket with its creation time, download count, expiry and size, which is the only place that keeps an inventory of what is currently stored.

Where it fits

PsiTransfer deliberately does almost nothing beyond moving bytes: there are no user accounts, no client portal and no permanent library, so the retention window is the whole access-control model apart from the optional bucket password. Teams that need accounts, groups, quotas and an audit trail should look at PlikShare or ProjectSend; for encrypted one-off links in the same spirit see SkySend, and for a small two-direction sharing tool see Sharry. The software is licensed BSD-2-Clause, which permits commercial use and closed-source redistribution as long as the copyright notice is kept. The full directory is at all tools.

Explore More Categories

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.