#parser #nlp #ingredient #recipe #ingreedy

bin+lib ingreedy-rs

Rust port of ingreedy - natural language recipe ingredient parser

2 unstable releases

0.2.0 Aug 3, 2021
0.1.0 Jul 18, 2021

#2015 in Parser implementations

MIT/Apache

48KB
1K SLoC

Rust 1K SLoC Pest 192 SLoC

ingreedy-rs

Crates.io Docs.rs CI Coverage Status

Natural language parsing of recipe ingredients

Rust port of ingreedy-py which is a port of Ingreedy.

"2 (28 ounce) can crushed tomatoes"

{
  "quantities": [
    {
      "amount": 56.0,
      "unit": "ounce",
      "unit_type": "English"
    }
  ],
  "ingredient": "can crushed tomatoes"
}

As a Rust library

[dependencies]
ingreedy-rs = {version = "0.1.0", default-features = false}
use ingreedy_rs::Ingredient;

fn main() {
    let ingredient = Ingredient::parse("2 (28 ounce) can crushed tomatoes")?;
}

As a command-line tool

Grab binaries from releases or cargo install ingreedy-rs

ingreedy-rs "2 (28 ounce) can crushed tomatoes"

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

See CONTRIBUTING.md.

Dependencies

~2.6–10MB
~90K SLoC