f4ad22b55b
- Implemented a theme system in `iced-panel-adapter` for consistent styling across panels. - Created `iced-panel-ai-chat` for an AI assistant interface, including message handling and UI components. - Developed `iced-panel-script` for a DSL editor with execution capabilities, allowing procedural drawing commands. - Introduced message types for interaction in both chat and script panels. - Added color and theme management for improved visual consistency.
144 lines
4.1 KiB
TOML
Executable File
144 lines
4.1 KiB
TOML
Executable File
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"hcie-protocol",
|
|
"hcie-color",
|
|
"hcie-blend",
|
|
"hcie-history",
|
|
"hcie-brush-engine",
|
|
"hcie-draw",
|
|
"hcie-composite",
|
|
"hcie-filter",
|
|
"hcie-selection",
|
|
"hcie-text",
|
|
"hcie-vector",
|
|
"hcie-io",
|
|
"hcie-document",
|
|
"hcie-engine-api",
|
|
"hcie-ai",
|
|
"hcie-vision",
|
|
"hcie-tile",
|
|
"hcie-fx",
|
|
"hcie-psd",
|
|
"hcie-psd-saver",
|
|
"hcie-kra",
|
|
"hcie-native",
|
|
"hcie-egui-app/crates/hcie-gui-egui",
|
|
"hcie-egui-app/crates/egui-panel-adapter",
|
|
"hcie-egui-app/crates/egui-panel-filters",
|
|
"hcie-egui-app/crates/egui-panel-ai-chat",
|
|
"hcie-egui-app/crates/egui-panel-script",
|
|
"hcie-egui-app/crates/egui-panel-ai-script",
|
|
"hcie-iced-app/crates/hcie-iced-gui",
|
|
"hcie-iced-app/crates/iced-panel-adapter",
|
|
"hcie-iced-app/crates/iced-panel-script",
|
|
"hcie-iced-app/crates/iced-panel-ai-chat",
|
|
"tools/screenshot-diff",
|
|
"tools/panel-tuner",
|
|
]
|
|
|
|
[workspace.dependencies]
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
image = { version = "0.25", default-features = false, features = ["png", "jpeg", "webp"] }
|
|
rayon = "1.10"
|
|
log = "0.4"
|
|
rand = "0.8"
|
|
rand_distr = "0.4"
|
|
bincode = "1.3"
|
|
|
|
# Engine-internal (no GUI)
|
|
fastnoise-lite = "1.1"
|
|
fontdue = "0.9"
|
|
zip = { version = "2.2", default-features = false, features = ["deflate"] }
|
|
quick-xml = "0.36"
|
|
usvg = "0.43"
|
|
resvg = "0.43"
|
|
tiny-skia = "0.11"
|
|
|
|
# GUI deps
|
|
egui = "0.34"
|
|
eframe = { version = "0.34", default-features = false, features = ["default_fonts", "glow", "persistence", "wayland", "x11"] }
|
|
egui_extras = { version = "0.34", features = ["svg", "image"] }
|
|
egui_dock = { version = "0.19", features = ["serde"] }
|
|
rfd = "0.15"
|
|
iced = { version = "0.13", features = ["tokio", "image", "svg"] }
|
|
|
|
# Utilities
|
|
base64 = "0.22"
|
|
reqwest = { version = "0.12", features = ["json", "multipart", "blocking", "stream"] }
|
|
tokio = { version = "1.40", features = ["full"] }
|
|
async-trait = "0.1"
|
|
anyhow = "1.0"
|
|
futures-util = "0.3"
|
|
arboard = "3.4"
|
|
env_logger = "0.11"
|
|
|
|
# Test frameworks
|
|
rstest = "0.23"
|
|
proptest = "1.5"
|
|
approx = "0.5"
|
|
|
|
# ════════════════════════════════════════════════════════════════════
|
|
# [LOCKED_PERF_PROFILES_START]
|
|
#
|
|
# ⚠️ AI WARNING — DO NOT REMOVE OR MODIFY THIS BLOCK ⚠️
|
|
#
|
|
# opt-level=0 makes pixel loops 10-50x slower.
|
|
# This profile is MANDATORY for development.
|
|
# ════════════════════════════════════════════════════════════════════
|
|
|
|
[profile.dev]
|
|
opt-level = 1
|
|
codegen-units = 1
|
|
|
|
[profile.dev.package."*"]
|
|
opt-level = 3
|
|
|
|
[profile.dev.package.hcie-protocol]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-color]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-blend]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-history]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-brush-engine]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-draw]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-composite]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-filter]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-selection]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-text]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-vector]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-io]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-document]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-engine-api]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-tile]
|
|
opt-level = 3
|
|
[profile.dev.package.hcie-ai]
|
|
opt-level = 2
|
|
[profile.dev.package.hcie-vision]
|
|
opt-level = 2
|
|
|
|
# [LOCKED_PERF_PROFILES_END]
|
|
# ════════════════════════════════════════════════════════════════════
|
|
|
|
[patch.crates-io]
|
|
egui-winit = { path = "patches/egui-winit" }
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
lto = "thin"
|
|
codegen-units = 1
|
|
strip = true
|