iced_nodegraph 0.5.0

High-performance node graph editor widget for Iced with SDF-based rendering
Documentation
[package]
name = "iced_nodegraph"
version.workspace = true
edition.workspace = true
authors.workspace = true
description = "High-performance node graph editor widget for Iced with SDF-based rendering"
repository.workspace = true
license.workspace = true
readme = "../README.md"
keywords = ["iced", "gui", "node-graph", "widget"]
categories = ["gui", "graphics", "visualization"]

[dependencies]
euclid.workspace = true
iced_nodegraph_sdf.workspace = true
iced_wgpu.workspace = true
# The `iced` umbrella crate is deliberately NOT a runtime dependency. It drags in
# the windowing shell (iced_winit -> winit, x11/wayland, clipboard) that a widget
# never touches, and because Cargo unifies features additively, depending on it
# would force iced's default features (tiny-skia, web-colors, ...) on every
# downstream application - which could then never turn them back off.
#
# `iced_widget` re-exports everything needed: `core` (= iced_core) and
# `renderer` (= iced_renderer, for the default `Renderer` type parameter).
# WebGPU only - there is no WebGL fallback (see crate docs).
iced_widget = { workspace = true, features = ["wgpu"] }
# `Task` and `Action::widget`, for the one-shot camera operation (`focus`).
iced_runtime.workspace = true
web-time.workspace = true

[dev-dependencies]
# The umbrella crate stays a dev-dependency: doctests are written the way users
# write code (`use iced::widget::text;`), and the widget-trait test harnesses
# (coordinates, clipping, overlay) reach Tree/Widget/Layout via
# `iced::advanced`.
#
# It pulls `iced_winit` -> `winit`, which refuses to compile on Linux unless a
# display backend feature is selected. The tests are headless, so pick the
# cheaper one: `x11` adds 7 crates, `wayland` adds 34 (the smithay stack plus
# tiny-skia, through winit's adwaita client-side decorations). Both are inert
# off Linux - winit declares their dependencies in a Linux-only target table.
iced = { workspace = true, features = ["wgpu", "tiny-skia", "advanced", "thread-pool", "x11"] }
iced_test = { workspace = true }
proptest.workspace = true
pollster.workspace = true
png.workspace = true