Files
BFlat d4e4ac69bb artcraft-native: generate with Midjourney or fal (provider choice) (#2115)
Images can run on Midjourney (own account, via a sign-in window) or fal (own API key), chosen from the model selector's Select Provider submenu. Jobs finish into the library. The Midjourney credential manager and the router prompt helper move into shared crates used by both desktop apps.
2026-10-11 20:47:59 +07:00

54 lines
1.8 KiB
TOML

[package]
name = "artcraft_native"
description = "ArtCraft desktop app in pure Rust: an egui UI over the ArtCraft API client (no Tauri, no webview)"
version = "0.1.0"
edition = "2021"
publish = false
[[bin]]
name = "artcraft-native"
path = "src/main.rs"
[dependencies]
# Internal (Tauri-free) API crates shared with the Tauri app.
artcraft_api_defs.workspace = true
artcraft_client.workspace = true
artcraft_router.workspace = true
cookie_store_wrapper.workspace = true
fal_client.workspace = true
midjourney_client.workspace = true
tokens.workspace = true
# External
anyhow.workspace = true
cookie.workspace = true
chrono.workspace = true
directories = "6.0.0"
eframe = { version = "0.36", default-features = false, features = ["default_fonts", "glow", "accesskit", "wayland", "x11", "persistence", "links"] }
egui = "0.36"
enums.workspace = true
egui_extras = { version = "0.36", default-features = false, features = ["image", "svg"] }
env_logger.workspace = true
image = { version = "0.25", default-features = false, features = ["png", "jpeg", "webp", "gif"] }
log.workspace = true
open = "5"
reqwest = { workspace = true, features = ["multipart"] }
resvg = "0.45"
rfd = "0.16"
rodio = { version = "0.20", default-features = false, features = ["symphonia-all"] }
serde.workspace = true
serde_json.workspace = true
tempfile.workspace = true
tokio = { workspace = true, features = ["rt-multi-thread", "sync", "time", "fs"] }
url.workspace = true
uuid = { workspace = true, features = ["v4"] }
# Pasting images from the clipboard (egui's own clipboard support is text only).
arboard = { version = "3", default-features = false, features = ["image-data"] }
# The Midjourney sign-in window (its login cookies can only be captured inside a browser).
wry = "0.55"
[dev-dependencies]
egui_kittest = "0.36"