Pkl — Le langage de config d'Apple qui veut vous faire lâcher YAML
Salut à tous 👋
Si vous avez déjà pesté contre un YAML cassé par une indentation invisible, Pkl (prononcé "pickle") mérite votre attention. C'est un langage open source (Apache 2.0) créé par Apple, dédié à un seul objectif : rendre la configuration moins douloureuse. Le projet est actif — v0.31 sortie en février 2026.
L'idée : la lisibilité d'un fichier de config, mais avec le typage, la validation et le templating d'un vrai langage.
Exemple — un schéma de config :
module ApplicationConfig
name: String
port: UInt16
database {
host: String
user: String
password: String(isBetween(8, 40))
}
Si le mot de passe fait 3 caractères, Pkl refuse d'évaluer et vous dit pourquoi. Fini les bugs de config qui pètent en prod.
Les points forts :
— Validation et typage intégrés avec messages d'erreur clairs
— Templating par héritage : fini le copier-coller de blocs YAML entre microservices
— Génération multi-format : un .pkl produit du JSON, YAML, XML
— Bindings natifs Java, Kotlin, Swift, Go
— Support éditeur : VS Code, IntelliJ, Neovim via LSP
Adoption réelle : l'équipe infra de GOV.UK a adopté Pkl fin 2025 pour leurs pipelines CI/CD après avoir évalué Go et KCL.
Nuances : runtime JVM, encore en pré-1.0, porté principalement par Apple. Overkill pour des configs simples, mais sur du K8s ou du CI/CD répétitif le gain est réel.
👉 pkl-lang.org | GitHub | Tutoriel
Curieux d'avoir vos retours si certains ont déjà testé !