npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-transcription-hess

v0.1.0

Published

Node n8n pour le moteur de transcription audio Whisper HESS

Readme

n8n-nodes-transcription-hess

Node communautaire n8n pour le moteur de transcription Whisper HESS (paquet api/ à la racine du projet Whisper). Envoie un fichier audio binaire à l'API POST /transcrire et renvoie le texte + les segments horodatés.

  • Node : Transcription HESS — entrée : un item avec un champ binaire audio ; sortie : { texte, segments[], langue, duree_audio, duree_calcul, modele }.
  • Credential : Transcription HESS API — URL de base + clé API (header X-API-Key), avec bouton Test (appelle GET /sante).

Compiler

npm install
npm run build      # tsc -> dist/ + copie de l'icône

Le build produit dist/ (c'est le seul dossier publié, cf. files dans package.json).

Installation privée sur Render (shell, sans rien publier) — méthode retenue

Le node reste 100 % privé (aucune publication npm). On dépose le paquet compilé sur le disque persistant de n8n (monté sur /home/node/.n8n), dans le dossier custom/ que n8n scanne au démarrage.

⚠️ Contrairement à l'install par l'UI, un node posé sur le disque n'est chargé qu'au (re)démarrage de n8n. Il faut donc redémarrer le service une fois (Render : Manual Deploy → Restart, ou un redéploiement — le disque et son contenu persistent dans les deux cas). Aucune perte de données.

1. Sur le PC — construire le paquet

npm install
npm run build
npm pack                 # produit n8n-nodes-transcription-hess-0.1.0.tgz (~6 ko)

2. Transférer le tarball dans le shell Render (copier-coller, privé)

Le tarball fait ~6 ko : on le passe en base64 par le presse-papier.

Sur le PC (PowerShell) — copie le base64 dans le presse-papier :

[Convert]::ToBase64String([IO.File]::ReadAllBytes("n8n-nodes-transcription-hess-0.1.0.tgz")) | Set-Clipboard

Dans le Shell du service n8n (dashboard Render → onglet Shell) :

mkdir -p /home/node/.n8n/custom && cd /home/node/.n8n/custom
[ -f package.json ] || npm init -y
cat > pkg.b64 <<'EOF'
<COLLER ICI le base64 du presse-papier, puis Entrée>
EOF
base64 -d pkg.b64 > pkg.tgz && rm pkg.b64
npm install ./pkg.tgz    # installe le node + sa dépendance form-data

(Le node atterrit dans /home/node/.n8n/custom/node_modules/ — sur le disque persistant.)

3. Redémarrer n8n

Dashboard Render → service n8n → Manual Deploy → Restart (ou un redéploiement). Au redémarrage, « Transcription HESS » apparaît dans la palette.

Pour mettre à jour le node plus tard : refaire npm run build + npm pack sur le PC, re-transférer, npm install ./pkg.tgz (écrase), redémarrer.


Alternative : installer dans n8n (UI — node communautaire public)

Sur ton n8n self-hosted (Render) :

  1. Vérifier que les nodes communautaires sont activés (par défaut oui ; variable N8N_COMMUNITY_PACKAGES_ENABLED non mise à false).
  2. ⚠️ Render : monter un disque persistant sur le dossier de données n8n (/home/node/.n8n), sinon le node installé disparaît à chaque redéploiement. (Disque persistant = offre Render payante.)
  3. Dans n8n : Settings → Community Nodes → Install, saisir le nom du paquet npm une fois publié : n8n-nodes-transcription-hess.

Publier sur npm (préalable à l'install par l'UI)

npm login
npm publish --access public

Le nom n8n-nodes-transcription-hess et le mot-clé n8n-community-node-package rendent le paquet reconnu comme node n8n.

Tester en local sans publier (lien)

Sur une instance n8n locale (npm global ou Docker avec volume) :

npm run build
npm link
cd ~/.n8n/custom        # créer ce dossier s'il n'existe pas
npm link n8n-nodes-transcription-hess

Puis relancer n8n : le node apparaît dans la palette.

Configurer dans le workflow

  1. Ajouter une credential Transcription HESS API :
    • URL de base : l'URL publique du tunnel cloudflared/ngrok (ex. https://xxxx.trycloudflare.com), ou http://127.0.0.1:8770 si n8n est sur le même réseau que le PC.
    • Clé API : la valeur cle_api de api/config.json.
    • Cliquer Test → doit être vert (/sante).
  2. Mettre le node Transcription HESS après un node qui fournit un binaire audio (Read/Download File, HTTP Request en mode fichier, Google Drive…).
    • Propriété binaire : nom du champ binaire (souvent data).
    • Langue, Inclure segments, Utiliser lexique, et Options (beam, modèle) selon le besoin.
  3. Le texte transcrit est dans {{ $json.texte }}.

Timeout : la transcription est synchrone (~×3,5 le temps réel sur CPU). Pour de longs fichiers, augmente le timeout de la requête au besoin.

Structure

credentials/TranscriptionHessApi.credentials.ts   # URL + clé, auth header, test /sante
nodes/TranscriptionHess/TranscriptionHess.node.ts # logique du node (POST multipart)
nodes/TranscriptionHess/transcription.svg         # icône
test-appel.js                                     # test manuel local (non publié)