TOML et souverainete numerique francaise
TOML (Tom's Obvious Minimal Language, cree par Tom Preston-Werner de GitHub) est le format de configuration natif de Rust via Cargo.toml. En France, plusieurs projets publics integrent Rust pour ses garanties memoire, notamment dans les services numeriques de l'Etat. Hugo, le generateur de sites statiques qui utilise config.toml par defaut, est tres employe pour les sites d'associations et de collectivites locales francaises, souvent heberges sur les infrastructures OVHcloud. Cet outil convertit TOML en JSON (et l'inverse) entierement dans le navigateur, sans transit de donnees.
TOML vs JSON vs YAML
| Format | Commentaires | Dates natives | Usage typique |
|---|---|---|---|
| TOML | Oui | Oui (RFC 3339) | Cargo.toml, pyproject.toml, Hugo |
| JSON | Non | Non | APIs REST, package.json, artefacts CI |
| YAML | Oui | Partiel | GitLab CI, Kubernetes, Docker Compose |
En pratique, pyproject.toml (Python PEP 517/518) remplace progressivement setup.py et setup.cfg dans les projets Python francais. Lorsqu'un outil de CI attend du JSON (tests de schemas, artefacts de pipeline), cette conversion est directement utilisable.
Points de vigilance sur la conversion
Les valeurs datetime TOML (RFC 3339) deviennent des chaines ISO 8601 en JSON, car JSON n'a pas de type date natif. La precision (fuseau horaire, millisecondes) est conservee dans la chaine. Les tableaux de tables TOML ([[section]]) sont convertis en tableaux d'objets JSON ; la semantique TOML disparait mais la structure est preservee.
Workflow recommande
Collez votre TOML ou JSON dans le panneau gauche, choisissez la direction, puis copiez le resultat. Pour les projets melangeant plusieurs formats de configuration, combinez cet outil avec YAML vers JSON afin de normaliser les configs en un seul format consommable par vos pipelines.