| Crates.io | lqf |
| lib.rs | lqf |
| version | 0.1.2 |
| created_at | 2025-05-31 01:25:35.741083+00 |
| updated_at | 2025-06-05 17:42:51.04245+00 |
| description | A lightweight, easy-to-read config format with clean section syntax and simple parsing. |
| homepage | |
| repository | https://www.github.com/smit4k/lqf |
| max_upload_size | |
| id | 1695901 |
| size | 47,387 |

lqf is a lightweight configuration format featuring a clean, sectioned syntax centered around the use of the > symbol โ designed to be easy to read, easy to write, and dead simple to parse. The official lqf specification can be found in github.com/smit4k/lqf-spec
This Rust crate provides a parser for .lqf files using pest.rs, ready for use in config-heavy projects or DSL exploration.
What does lqf stand for? It stands for Lightweight Quick Format
You can find a full example of an lqf file in example.lqf
>>>"text"123, 3.14true, false[1, 2, 3], ["a", "b"]null#Given this .lqf file:
> database
host >> "localhost"
port >> 5432
> features
enabled >> ["search", "logging", "metrics"]
You can parse it like this in Rust:
use lqf::parse_lqf;
fn main() {
let input = r#"
> database
host >> "localhost"
port >> 5432
> features
enabled >> ["search", "logging", "metrics"]
"#;
let parsed = parse_lqf(input).expect("failed to parse LQF");
println!("{:#?}", parsed);
}
Output:
{
"database": {
"host": String("localhost"),
"port": Number(5432.0),
},
"features": {
"enabled": Array([
String("search"),
String("logging"),
String("metrics"),
])
}
}
Add this to your Cargo.toml
[dependencies]
lqf = "0.1.1"
Contributions are welcome! Feel free to open issues, submit pull requests, or discuss ideas.