[package]
edition = "2021"
rust-version = "1.86"
name = "schemaorg-validate"
version = "0.3.0"
authors = ["Sinisa Mitrovic"]
build = "build.rs"
exclude = [
"tests/fixtures/*",
".github/*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Parse and validate Schema.org structured data (JSON-LD, Microdata, RDFa) against the official vocabulary and Google Rich Results profiles."
homepage = "https://github.com/mitrovicsinisaa/schemaorg-rs"
documentation = "https://docs.rs/schemaorg-validate"
readme = "README.md"
keywords = [
"schema-org",
"json-ld",
"structured-data",
"seo",
"validation",
]
categories = [
"parsing",
"web-programming",
"encoding",
]
license = "MIT"
repository = "https://github.com/mitrovicsinisaa/schemaorg-rs"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[package.metadata.wasm-pack.profile.release]
wasm-opt = false
[features]
cli = [
"profiles",
"dep:clap",
"dep:ureq",
"dep:serde_json",
]
default = ["extraction"]
extraction = [
"dep:scraper",
"dep:ego-tree",
"dep:serde_json",
]
full = [
"extraction",
"validation",
"profiles",
]
profiles = ["validation"]
validation = ["extraction"]
wasm = [
"profiles",
"dep:wasm-bindgen",
"dep:serde_json",
"dep:getrandom",
"dep:getrandom_02",
]
[lib]
name = "schemaorg_rs"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[bin]]
name = "schemaorg-validate"
path = "src/bin/validate.rs"
required-features = ["cli"]
[[test]]
name = "cli_tests"
path = "tests/cli_tests.rs"
[[test]]
name = "codegen_tests"
path = "tests/codegen_tests.rs"
[[test]]
name = "extraction_unified"
path = "tests/extraction_unified.rs"
[[test]]
name = "profile_integration"
path = "tests/profile_integration.rs"
[[test]]
name = "profile_tests"
path = "tests/profile_tests.rs"
[[test]]
name = "validation_tests"
path = "tests/validation_tests.rs"
[dependencies.clap]
version = "4"
features = ["derive"]
optional = true
[dependencies.ego-tree]
version = "0.6"
optional = true
[dependencies.getrandom]
version = "0.3"
features = ["wasm_js"]
optional = true
[dependencies.getrandom_02]
version = "0.2"
features = ["js"]
optional = true
package = "getrandom"
[dependencies.indexmap]
version = "2"
features = ["serde"]
[dependencies.scraper]
version = "0.20"
optional = true
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.thiserror]
version = "1"
[dependencies.ureq]
version = "2"
optional = true
[dependencies.wasm-bindgen]
version = "0.2"
optional = true
[dev-dependencies.pretty_assertions]
version = "1"
[dev-dependencies.wasm-bindgen-test]
version = "0.3"
[build-dependencies.serde]
version = "1"
features = ["derive"]
[build-dependencies.serde_json]
version = "1"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"
strip = true