Aller au contenu
colis

Exemples

Faites-le tourner chez vous.

Tout le dépôt tourne en local avec un conteneur MinIO : rien à créer comme compte, et le vrai chemin de code. Lancez la page de livraison, puis envoyez-lui un fichier depuis un terminal.

un bucket sur votre portable
docker run -p 9000:9000 -p 9001:9001 \
  -e MINIO_ROOT_USER=minioadmin -e MINIO_ROOT_PASSWORD=minioadmin \
  quay.io/minio/minio server /data --console-address ":9001"

01templates/drop

La page de livraison, en local

Le modèle complet sur votre machine, contre un MinIO : déposer un fichier, l’ouvrir dans un autre navigateur, le valider, et voir l’accusé changer sur la page d’envoi.

À noter

  • Le fichier mis en attente avant l’envoi : aperçu, durée, mot de passe, message
  • La page de retrait : aperçu, mot de passe, puis Valider ou Demander des corrections
  • Le suivi côté expéditeur, qui se met à jour tout seul
  • L’envoi direct au bucket par morceaux au-dessus de DROP_MAX_SIZE_MB, avec reprise
Next.js@colis/core@colis/reactMinIO
lancer
cp templates/drop/.env.example templates/drop/.env.local   # then uncomment its MinIO block
bun install
bun run --filter colis-drop dev                               # http://localhost:3400

02packages/cli

La CLI contre votre page

Envoyer un fichier depuis un terminal vers la page de livraison qui tourne en local, puis suivre sa livraison avec colis statut pendant que vous répondez dans le navigateur.

À noter

  • verifier contre un serveur : un vrai aller-retour, puis sortie non nulle en cas d’échec
  • Le code seul sur stdout, tout le reste sur stderr
  • statut : l’état sur la première ligne, puis chaque étape avec son heure
Node 20+colis
lancer
bun run build
alias colis="node $PWD/packages/cli/dist/index.js"
colis --remote http://localhost:3400/api/transfers verifier
colis --remote http://localhost:3400/api/transfers envoyer ./maquette.pdf
colis --remote http://localhost:3400/api/transfers statut <code>

03packages/n8n-nodes-colis

Le nœud n8n

Les deux nœuds, Colis Trigger et Colis, construits et testés sans n8n : la logique vit dans des fonctions simples que les nœuds ne font que brancher.

À noter

  • La vérification de signature avec verifyWebhook, le même code que celui qui signe
  • Un événement non sélectionné répondu 200 sans rien lancer, pour que le déploiement ne réessaie pas
  • Send, Get, Get Status et Delete sur un colis
n8n@colis/protocolStandard Webhooks
lancer
bun run --filter n8n-nodes-colis build   # dist/, and the icons beside the nodes
bun run --filter n8n-nodes-colis test    # both nodes, against a fake n8n context

Cinq minutes

De rien à un colis validé.

  1. 01

    Lancez MinIO avec la commande ci-dessus, créez un bucket, et décommentez le bloc MinIO du .env.local de la page de livraison.

  2. 02

    Lancez la page de livraison, et vérifiez qu’elle répond.

  3. 03

    Envoyez un fichier, ouvrez son lien dans un autre navigateur, validez-le, et lisez l’accusé de réception.

Vous envoyez. Ils valident. Vous le savez.

Votre stockage, une page de livraison à votre nom, un webhook à chaque étape. Rien d’hébergé chez un tiers.