[package] name = "zalgo-codec" authors = ["Johanna Sörngård ", "Scott Conner", "Alex Keizer "] version = "0.13.1" edition = "2021" keywords = ["unicode", "obfuscation", "encoding", "zalgo"] categories = ["encoding", "text-processing"] license = "MIT OR Apache-2.0" repository = "https://github.com/JSorngard/zalgo_codec/tree/main/codec" description = "Convert an ASCII text string into a single unicode grapheme cluster and back. Provides a macro for embedding Rust source code that has been encoded in this way." rust-version = "1.81.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] zalgo-codec-common = { version = "0.13.1", default-features = false } zalgo-codec-macro = { version = "0.1.32", optional = true } anyhow = { version = "1.0", default-features = false, optional = true } iced = { version = "0.13", default-features = false, features = ["tiny-skia"], optional = true } rfd = { version = "0.15", optional = true } cli-clipboard = { version = "0.4", default-features = false, optional = true } clap = { version = "4.5", default-features = false, features = ["derive", "help", "color", "error-context", "suggestions", "usage"], optional = true } [dev-dependencies] rand = { version = "0.8", default-features = false, features = ["alloc", "std", "std_rng"] } unicode-segmentation = { version = "1.12", features = ["no_std"] } [features] default = ["macro"] # Builds a binary that can be used to test out the codec. binary = ["std", "dep:clap", "dep:anyhow"] # Builds an optional GUI into the binary. gui = ["binary", "dep:iced", "dep:rfd", "dep:cli-clipboard"] # Derives the `Serialize` and `Deserialize` traits from [`serde`](https://crates.io/crates/serde) for the `ZalgoString` struct. serde = ["zalgo-codec-common/serde"] # Derives the `Serialize`, `Deserialize`, and `Archive` traits from [`rkyv`](https://crates.io/crates/rkyv) for the `ZalgoString` struct. rkyv = ["zalgo-codec-common/rkyv"] # Enables the proc-macros `zalgo_embed!` and `zalgofy!` macro = ["dep:zalgo-codec-macro"] # Enables the `EncodeError` and `DecodeError` types to capture a `Backtrace`. # Without this feature the crate is `no_std` compatible, but still uses the `alloc` crate. std = ["zalgo-codec-common/std", "anyhow?/std", "clap?/std"] [package.metadata.docs.rs] # Document all features. all-features = true [[bin]] name = "zalgo_codec" path = "src/main.rs" required-features = ["binary"] [lib] name = "zalgo_codec" path = "src/lib.rs"