Confetti is a configuration language and parser library written in C11 with no external dependencies.
Confetti is intended for human-editable configuration files. It is minimalistic, untyped, and opinionated. Schema conformance is validated by the user application.
Confetti does not compete with JSON or XML, it competes with INI files.
# This is a comment.
probe-device eth0 eth1
user * {
login anonymous
password "${ENV:ANONPASS}"
machine 167.89.14.1
proxy {
try-ports 582 583 584
}
}
user "Joe Williams" {
login joe
machine 167.89.14.1
}
Browse many more examples here.
- Can be learned in minutes
- Language grammar fits on a postcard
- Typeless design
- Unicode® conformant
- Localization friendly
Download the latest release and build with
$ ./configure
$ make
$ make install
or build with CMake.
Confetti language documentation is available on its website.
The C API is documented by its man pages.
Run man confetti
after installing the library.
MIT License. See LICENSE for details.