[package] name = "auracite" version = "0.1.0" edition = "2021" description = "Export your FFXIV character in portable, generic formats" [lib] crate-type = ["cdylib", "rlib"] [[bin]] name = "cli" required-features = ["cli"] [[bin]] name = "ui" required-features = ["ui"] [features] # Builds the Qt UI for Auracite ui = ["cxx", "cxx-qt-build", "cxx-qt", "cxx-qt-lib", "cxx-kde-frameworks"] # Builds the CLI for Auracite cli = ["clap", "clap_derive"] [build-dependencies] cxx-qt-build = { git = "https://github.com/KDAB/cxx-qt", branch = "main", features = ["link_qt_object_files"], default-features = false, optional = true } [dependencies] # Used to scrape the Lodestone HTML pages scraper = { version ="0.21", default-features = false } # Used to serialize the JSON data we export serde = { version = "1.0", features = ["derive"], default-features = false } # Used to do some misc regex operations during scraping regex = { version = "1.11", default-features = false, features = ["unicode-perl"] } # Used to generate the HTML page to easily preview your exported data minijinja = { version = "2.0", default-features = false } # Used to communicate with the Dalamud plugin # Needs my fork for allowing server shutdown # TODO: upstream this or poke upstream to add this touche = { git = "https://github.com/redstrate/touche", default-features = false, features = ["server"] } # Download files reqwest = { version = "0.12", default-features = false, features = ["native-tls"] } # Zip the character archive zip = { version = "2.2", default-features = false } # Not used directly by us, but to disable the "std" feature and is used by the scraper crate. ahash = { version = "0.8.0", default-features = false } # Ditto, but used by the ahash crate. getrandom = { version = "0.2", features = ["js"], default-features = false } [target.'cfg(target_family = "wasm")'.dependencies] # Used to generate the WebAssembly version wasm-bindgen = { version = "0.2.95", default-features = false } wasm-bindgen-futures = { version = "0.4", default-features = false } # For async tokio = { version = "1.41", features = ["rt", "macros"], default-features = false } # Encoding the character archive to base64 so the browser can download it base64 = { version = "0.22", default-features = false } serde_json = { version = "1.0", default-features = false, features = ["alloc"] } [target.'cfg(not(target_family = "wasm"))'.dependencies] # For async tokio = { version = "1.41", features = ["rt", "rt-multi-thread", "macros"], default-features = false } # CLI interface clap = { version = "4.5", features = ["derive"], default-features = false, optional = true } clap_derive = { version = "4.5", default-features = false, optional = true } # Used for the Qt UI cxx = { version = "1.0", default-features = false, optional = true } cxx-qt = { git = "https://github.com/KDAB/cxx-qt", branch = "main", default-features = false, optional = true } cxx-qt-lib = { git = "https://github.com/KDAB/cxx-qt", branch = "main", default-features = false, optional = true} cxx-kde-frameworks = { git = "https://invent.kde.org/libraries/cxx-kde-frameworks", branch = "master", default-features = false, optional = true } serde_json = { version = "1.0", default-features = false, features = ["std"] }