Skip to Content
Mélodium 0.10.1 is now available!
DocsExemplesVue d'ensemble

Exemples

Hello World

Créez un fichier hello-world.mel, et mettez-y le code :

#!/usr/bin/env melodium #! name = hello_world #! version = 0.1.0 #! require = std:0.10.* use std/engine/util::startup use std/engine/log::logInfoMessage treatment main() { startup() logInfoMessage(message = "Hello World!") startup.trigger -> logInfoMessage.trigger }

Exécutez-le avec melodium run hello-world.mel.

$ melodium run hello-world.mel [2012-12-21T01:32:45.678Z] info: info: Hello World!

Hello World (en tant que projet)

Créez un projet brut melodium new hello-world.

$ melodium new hello-world success: program 'hello_world' created in 'hello-world'

Dans le fichier lib-root.mel, mettez le code :

use std/engine/util::startup use std/engine/log::logInfoMessage treatment main() { startup() logInfoMessage(message = "Hello World!") startup.trigger -> logInfoMessage.trigger }

Dans Compo.toml, ajoutez les entrées :

[entrypoints] main = "hello_world::main"

Exécutez avec melodium run hello-world/Compo.toml:

$ melodium run hello-world/Compo.toml [2012-12-21T01:32:45.678Z] info: info: Hello World!

Download

Créez un projet brut melodium new download.

$ melodium new download success: program 'download' created in 'download'
hello-world ├── Compo.toml └── lib-root.mel

Dans le fichier lib-root.mel, mettez le code :

use fs/local::writeLocal use http/client/util::get use std/engine/util::startup use std/engine/log::logError treatment download(url: string, file: string) { startup() get(url=url) writeLocal(path=file) logError() startup.trigger -> get.trigger,data -> writeLocal.data get.error --------> logError.message }

Dans Compo.toml, ajoutez les entrées :

[dependencies] std = "^0.10.1" fs = "^0.10.1" http = "^0.10.1" [entrypoints] main = "download::download"

Exécutez avec melodium run download/Compo.toml --url https://melodium.tech/img/voyage.jpeg --file nantes.jpeg

Plus d’exemples

Les exemples ci-dessous se trouvent dans le répertoire examples/ du dépôt Mélodium. Clonez-le pour les exécuter localement :

git clone https://github.com/melodium-tech/melodium.git cd melodium/examples

Chaque exemple est un projet Mélodium autonome avec un Compo.toml et un ou plusieurs fichiers .mel. Exécutez n’importe quel exemple avec :

melodium run <répertoire-exemple>/Compo.toml [point-entrée] [-- --arg valeur …]

Exemples par catégorie

Dataflow & HTTP

ExempleCe qu’il illustre
Pipeline HTTP + JSONDataflow pur, pas de modèles, client HTTP, parsing JSON
API SQL UtilisateursModèle pool de connexions, serveur HTTP, requêtes SQL
Serveur de chat LLMRéponses HTTP en flux, modèle LLM distant
Transformation JavaScriptModèle moteur JS embarqué, transformation JSON par requête
Résumé de réunionPipeline STT → LLM en deux étapes par requête HTTP
Chat visionLLM vision, deux points d’entrée (CLI + serveur HTTP)

Parole & IA

ExempleCe qu’il illustre
Transcription par lotSTT distant one-shot, pontage Block/Stream
Transcription vocaleModèle Whisper local, téléchargement HuggingFace, micro ou fichier
Q&A vocal (local)Whisper + Mistral locaux, chargement de modèles en parallèle
Pipeline vocal completChaînage STT → LLM → TTS sur trois APIs cloud
Assistant vocal temps réelDeux points d’entrée, tokens en flux vers la console

Distribué & Cloud

ExempleCe qu’il illustre
Travail distribuéDistantEngine + DistributionEngine, séparation serveur/worker
Traitement de texte distribuéTraitement JS distant, front-end HTTP, runner à la demande
Pipeline worker cloudFichier en entrée → traitement cloud → fichier en sortie, nettoyage explicite
Inférence LLM distribuéeLLM sur runner distant, passage de paramètres const, sans ML côté local
Pipeline CICicdDispatchEngine, étapes parallèles, sidecars de service, fork-join