Differences between revisions 1 and 4 (spanning 3 versions)
Revision 1 as of 2019-03-27 21:02:32
Size: 241
Editor: SamatJain
Comment: Initial page
Revision 4 as of 2025-05-21 20:50:45
Size: 1774
Editor: SamatJain
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== HOCON (Human-Optimized Config Object Notation) ==

 * [[https://github.com/lightbend/config/blob/main/HOCON.md|Specification]]
 * Examples
   * [[https://docs.spongepowered.org/stable/en/server/getting-started/configuration/sponge-conf.html|sponge's global.conf]]
 * Parsing into dataclasses
  * pyhocon + pydantic: https://gist.github.com/martin1keogh/2817e338fb06ad3573cffcfb8e713ac7
  * another pyhocon + pydantic: https://gist.github.com/GreyElaina/d851e9c9304085f7101d45725d378f68
 * [[https://github.com/chimpler/pyhocon/|pyhocon]]: Provides CLI tool for conversion between formats
 * Dataclasses for configuration management
  * [[https://github.com/zifeo/dataconf|dataconf]]: HOCON output by default
  * [[https://github.com/stasharrofi/pytyped/tree/master/pytyped-hocon|pytyped-hocon]]

== Others ==

 * HConfig
 * Dhall
Line 10: Line 28:

== Hjson ==

 * [[https://lobste.rs/s/dn91bz/why_broot_is_switching_from_toml_hjson_for|Why broot is switching from TOML to Hjson for its configuration files]]

== ucl (Universal Configuration Language) ==

 * Used by FreeBSD, very similar to nginx
 * [[https://github.com/vstakhov/libucl|vstakhov/libucl]]
 * Seems best, similar to HOCON, but no modern Python package?
  * Install python bindings from libucl git repo: https://github.com/vstakhov/libucl/issues/202

== nginx conf ==

 * [[https://pypi.org/project/crossplane-ng/|crossplane-ng]] / [[https://github.com/nginxinc/crossplane|crossplane] parses nginx conf in Python

== KDL ==

 * https://kdl.dev/

HOCON (Human-Optimized Config Object Notation)

Others

  • HConfig
  • Dhall

HCL

TOML

YAML

Hjson

ucl (Universal Configuration Language)

nginx conf

KDL

SamatsWiki: ConfigurationLanguages (last edited 2025-05-21 20:50:45 by SamatJain)