[package]
edition = "2024"
rust-version = "1.89"
name = "incular"
version = "0.1.0"
authors = ["Fanisus"]
build = false
include = [
"src/**",
"README.md",
"LICENSE",
"examples/hello.rs",
]
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A Flutter-inspired GUI library for Rust"
homepage = "https://github.com/FabortLabs/incular"
documentation = "https://docs.rs/incular"
readme = "README.md"
keywords = [
"gui",
"ui",
"incular",
]
categories = ["gui"]
license = "Apache-2.0"
repository = "https://github.com/FabortLabs/incular"
[package.metadata.docs.rs]
all-features = true
default-target = "x86_64-unknown-linux-gnu"
targets = [
"x86_64-pc-windows-msvc",
"aarch64-apple-darwin",
]
[features]
controls = ["dep:incular-controls"]
default = [
"desktop",
"controls",
"material",
]
desktop = [
"desktop-host",
"dx12",
"metal",
"vulkan",
"gl",
]
desktop-host = [
"dep:incular-platform",
"dep:incular-wgpu",
"dep:incular-linux",
"dep:incular-windows",
"dep:incular-macos",
]
devtools = [
"incular-linux?/devtools",
"incular-windows?/devtools",
"incular-macos?/devtools",
"incular-runtime/devtools",
"incular-widgets/devtools",
]
dx12 = [
"desktop-host",
"incular-wgpu/dx12",
]
gl = [
"desktop-host",
"incular-wgpu/gl",
]
hot-reload = [
"incular-linux?/hot-reload",
"incular-windows?/hot-reload",
"incular-macos?/hot-reload",
"incular-runtime/hot-reload",
]
material = [
"controls",
"dep:incular-material",
]
metal = [
"desktop-host",
"incular-wgpu/metal",
]
vulkan = [
"desktop-host",
"incular-wgpu/vulkan",
]
[lib]
name = "incular"
path = "src/lib.rs"
[[example]]
name = "hello"
path = "examples/hello.rs"
required-features = ["desktop-host"]
[dependencies.incular-accessibility]
version = "0.1.0"
[dependencies.incular-animation]
version = "0.1.0"
[dependencies.incular-assets]
version = "0.1.0"
[dependencies.incular-config]
version = "0.1.0"
[dependencies.incular-controls]
version = "0.1.0"
optional = true
[dependencies.incular-core]
version = "0.1.0"
[dependencies.incular-gestures]
version = "0.1.0"
[dependencies.incular-image]
version = "0.1.0"
[dependencies.incular-layout]
version = "0.1.0"
[dependencies.incular-linux]
version = "0.1.0"
optional = true
[dependencies.incular-macos]
version = "0.1.0"
optional = true
[dependencies.incular-material]
version = "0.1.0"
optional = true
[dependencies.incular-navigation]
version = "0.1.0"
[dependencies.incular-platform]
version = "0.1.0"
optional = true
[dependencies.incular-rendering]
version = "0.1.0"
[dependencies.incular-runtime]
version = "0.1.0"
[dependencies.incular-scroll]
version = "0.1.0"
[dependencies.incular-semantics]
version = "0.1.0"
[dependencies.incular-text]
version = "0.1.0"
[dependencies.incular-wgpu]
version = "0.1.0"
optional = true
default-features = false
[dependencies.incular-widgets]
version = "0.1.0"
[dependencies.incular-windows]
version = "0.1.0"
optional = true
[dev-dependencies.directories]
version = "6.0.0"
[dev-dependencies.keyboard-types]
version = "0.8.3"
[dev-dependencies.miniz_oxide]
version = "0.8"
features = ["with-alloc"]
default-features = false
[dev-dependencies.serde]
version = "1.0"
features = ["derive"]
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.tokio]
version = "1.53"
features = [
"rt-multi-thread",
"sync",
"time",
"net",
"io-util",
]
[lints.rust]
unsafe_op_in_unsafe_fn = "deny"
unused_must_use = "deny"
[lints.rustdoc]
broken_intra_doc_links = "deny"