Introduction
colis livre vos fichiers à vos clients depuis un stockage qui vous appartient, et vous dit quand ils les ont validés.
Livrez un fichier à un client depuis votre propre bucket, et recevez sa réponse.
# sans rien configurer : le service public ; ou votre page de livraison (colis init --provider remote)
$ colis envoyer ./maquette-v2.pdf
maquette-v2.pdf · 1.8 MB · expires in 1 day
K7QP2M4X
# plus tard : le client a-t-il validé ?
$ colis statut K7QP2M4X
validé
envoyé 2026-09-22 10:00
ouvert 2026-09-22 11:00
validé 2026-09-22 12:00Ce que fait colis
colis est un outil de livraison de fichiers pour les freelances :
- Vous envoyez un livrable vers un stockage compatible S3 qui vous appartient (AWS S3, Cloudflare R2, MinIO, Scaleway, Wasabi) — ou, pour commencer, vers le service public de colis — sous un code de huit caractères, avec une durée de vie et, si vous le voulez, un mot de passe.
- Votre client ouvre la page de retrait de votre déploiement, voit un aperçu du fichier, puis valide la livraison ou demande des corrections avec un commentaire. Sa réponse est définitive et horodatée.
- Chaque étape déclenche un webhook signé (Standard Webhooks, HMAC-SHA256), et un nœud n8n lance un workflow sur n’importe laquelle d’entre elles.
- Les gros fichiers partent du navigateur directement vers le bucket, en morceaux, avec reprise si la connexion coupe.
- La CLI parle français :
envoyer,recevoir,statut,annuler,verifier,init. Les anciens nomsput,get,rmetdoctorrestent des alias.
Il n’y a pas de compte. Sans rien configurer, la CLI passe par le service public, colis-tau.vercel.app : ouvert à tous et limité (un fichier de 100 Mo au plus, gardé 24 h au plus, et 20 envois par heure depuis une même adresse). Avec votre bucket, les fichiers restent chez vous, et la page de livraison tourne sur votre déploiement Vercel.
Les pièces
| Pièce | Rôle |
|---|---|
templates/drop | La page de livraison : l’envoi, la page de retrait, l’accusé de réception, les webhooks. Une app Next.js à déployer. |
@mdemb/colis | La commande colis, pour envoyer depuis un terminal ou une CI et suivre une livraison. |
n8n-nodes-colis | Un déclencheur et une action pour n8n. |
@colis/core | Le seul paquet qui détient les identifiants du stockage : l’API fichiers et les routes de transfert. |
@colis/protocol | Le contrat que partagent le serveur et ses clients, les codes et la signature des webhooks. Sans client S3. |
@colis/react | Les hooks pour envoyer, retrouver un code et saisir un code sans faute. |
La commande s’installe avec npm i -g @mdemb/colis. Les autres paquets ne sont pas encore publiés :
ils se construisent depuis le dépôt, voir Installation.
Ce que colis n’est pas
Ce n’est pas un service de stockage hébergé. Le service public sert à commencer et aux petits envois, dans ses limites. Pour vos livrables, déployez la page de livraison sur votre compte, avec votre bucket : rien ne transite alors par un serveur qui ne vous appartient pas.
Ce n’est pas un client S3 généraliste. Pas de list(), pas d’administration de bucket, pas de
règles de cycle de vie créées pour vous. Le client S3 sous-jacent reste accessible par
store.client.
Ce n’est pas du chiffrement. Votre déploiement peut lire chaque fichier qu’il stocke. Quand ce n’est pas acceptable, chiffrez avant d’envoyer, et donnez au colis une courte durée de vie ou un mot de passe.
Par où commencer
- Démarrage rapide : un premier colis envoyé, ouvert et validé.
- Page de livraison : la déployer sur Vercel avec votre bucket.
- CLI : chaque commande et chaque option.
- Webhooks & n8n : brancher vos automatisations.
- Cas d’usage : les scénarios de freelance, de bout en bout.
Le site présente le produit, les comparatifs et les fournisseurs : colis-site.vercel.app.
colis est un fork de s3nd, d’Abderrahmane Mouzoune, sous licence MIT comme colis.