[package]
edition = "2024"
name = "phrasebook"
version = "0.2.0"
authors = ["John-John Tedro <udoprog@tedro.se>"]
build = false
include = [
"/src/**",
"/tests/**",
"/examples/tour.rs",
"/README.md",
"/LICENSE-*",
"/Cargo.toml",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Fluent localization for Rust web frontends: message catalogs per language, arguments and plurals, a remembered language choice in the browser."
documentation = "https://docs.rs/phrasebook"
readme = "README.md"
keywords = [
"fluent",
"i18n",
"l10n",
"localization",
"wasm",
]
categories = [
"internationalization",
"localization",
"wasm",
"web-programming",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/udoprog/phrasebook"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"phrasebook_docsrs",
]
[features]
alloc = ["koine03?/alloc"]
browser = [
"std",
"dep:web-sys",
"dep:js-sys",
"dep:wasm-bindgen",
"dep:intl-memoizer",
]
default = ["std"]
koine03 = [
"std",
"dep:koine03",
"phrasebook-catalog/koine03",
]
std = [
"alloc",
"dep:fluent-bundle",
"dep:fluent-syntax",
"dep:unic-langid",
"dep:tracing",
"tracing/std",
"koine03?/std",
]
yew023 = [
"std",
"dep:yew023",
"phrasebook-catalog/yew023",
]
[lib]
name = "phrasebook"
path = "src/lib.rs"
[[example]]
name = "tour"
path = "examples/tour.rs"
required-features = ["std"]
[[test]]
name = "yew023"
path = "tests/yew023.rs"
[dependencies.fluent-bundle]
version = "0.16.0"
optional = true
[dependencies.fluent-syntax]
version = "0.12.0"
optional = true
[dependencies.koine03]
version = "0.3.0"
features = ["locale"]
optional = true
default-features = false
package = "koine"
[dependencies.phrasebook-catalog]
version = "0.1.0"
[dependencies.tracing]
version = "0.1.44"
optional = true
default-features = false
[dependencies.unic-langid]
version = "0.9.6"
optional = true
[dependencies.yew023]
version = "0.23.0"
optional = true
package = "yew"
[dev-dependencies.futures]
version = "0.3"
features = ["executor"]
default-features = false
[dev-dependencies.yew023]
version = "0.23.0"
features = ["ssr"]
package = "yew"
[target.'cfg(target_arch = "wasm32")'.dependencies.intl-memoizer]
version = "0.5.3"
optional = true
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3.77"
optional = true
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2.100"
optional = true
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3.77"
features = [
"Document",
"Element",
"Navigator",
"Storage",
"Window",
]
optional = true
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(phrasebook_docsrs)"]