---
title: PsiTransfer
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, file-sharing, simple, minimal, transfer]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=File+Sharing, https://github.com/psi4j/psitransfer]
---

# 📁 PsiTransfer

> Service de partage de fichiers minimaliste en Node.js, conçu pour être self-hosté en une commande.

## 📋 Informations Générales

| Attribut | Valeur |
|----------|--------|
| **Nom** | PsiTransfer |
| **Slug** | psitransfer |
| **Description** | Partage de fichiers minimaliste single-binary Node.js |
| **Site officiel** | https://psi4j.github.io/psitransfer/ |
| **Repository** | https://github.com/psi4j/psitransfer |
| **Stars** | 1 889 ⭐ |
| **Licence** | BSD-3-Clause |
| **Langage principal** | JavaScript |
| **Catégorie** | File Sharing |
| **Tags** | [catalogue, file-sharing, simple, minimal, transfer] |

## 📝 Description
PsiTransfer est un service de partage de fichiers ultra-minimaliste écrit en Node.js (avec frontend Vue.js). Sa philosophie est la simplicité radicale : une seule commande pour lancer le service, pas de base de données, configuration par défaut fonctionnelle immédiatement.

L'application supporte l'upload par drag-and-drop avec une barre de progression, l'auto-destruction des fichiers après téléchargement (optionnel), et la possibilité de protéger les fichiers par mot de passe. Les fichiers sont stockés sur disque dans un répertoire configurable, et les métadonnées en mémoire (donc perdues au redémarrage — choix assumé de simplicité).

L'usage typique est le remplacement de WeTransfer / TransferNow pour un usage interne ou familial, avec zéro maintenance. Le design est volontairement daté mais fonctionnel, et la consommation mémoire est très faible. Idéal pour un Pi ou un VPS léger, ou comme service jetable de partage temporaire.

## 🚀 Installation
### Via Docker (recommandé)
```yaml
# docker-compose.yml
services:
  psitransfer:
    image: ghcr.io/psi4j/psitransfer:latest
    container_name: psitransfer
    restart: unless-stopped
    ports:
      - "3000:3000"
    environment:
      - PSITRANSFER_UPLOAD_DIR=/data/uploads
      - PSITRANSFER_AUTO_PROCESS=true
    volumes:
      - psitransfer_data:/data
volumes:
  psitransfer_data:
```

### Installation manuelle
```bash
git clone https://github.com/psi4j/psitransfer.git
cd psitransfer
npm install
npm run build
npm start
```

## ⚙️ Configuration
- `PSITRANSFER_UPLOAD_DIR` : répertoire de stockage
- `PSITRANSFER_AUTO_PROCESS` : auto-destruction après download
- `PSITRANSFER_MAX_FILE_SIZE` : taille max (défaut illimitée)
- Pas de DB : métadonnées en RAM

## 🔗 Alternatives
- **Transfer.zip** — équivalent plus moderne
- **Gokapi** — ajoute chiffrement at rest
- **PicoShare** — URLs permanentes au lieu d'éphémères

## 🔒 Sécurité
- Pas de comptes utilisateurs (par conception)
- HTTPS obligatoire (reverse proxy)
- Pas de chiffrement at rest (fichiers en clair)
- Mots de passe optionnels par fichier

## 📚 Ressources
- [Site officiel](https://psi4j.github.io/psitransfer/)
- [GitHub](https://github.com/psi4j/psitransfer)
- [Démo publique](https://transfer.psikem.com)

## 🔗 Pages Liées
- [[cat-file-sharing]] (n'existe pas encore, OK)
- [[app-transfer-zip]]
- [[app-gokapi]]
- [[app-traefik]]
- [[recettes-docker-compose]]
- [[securisation-home-lab]]
- [[cat-storage]] (n'existe pas, OK)
