[package]
name = "egui"
version = "0.17.0"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "An easy-to-use immediate mode GUI that runs on both web and native"
edition = "2021"
rust-version = "1.60"
homepage = "https://github.com/emilk/egui"
license = "MIT OR Apache-2.0"
readme = "../README.md"
repository = "https://github.com/emilk/egui"
categories = ["gui", "game-development"]
keywords = ["gui", "imgui", "immediate", "portable", "gamedev"]
include = ["../LICENSE-APACHE", "../LICENSE-MIT", "**/*.rs", "Cargo.toml"]

[package.metadata.docs.rs]
all-features = true

[lib]


[features]
default = ["default_fonts"]

# add compatibility with https://crates.io/crates/cint
cint = ["epaint/cint"]

# implement bytemuck on most types.
bytemuck = ["epaint/bytemuck"]

# If set, egui will use `include_bytes!` to bundle some fonts.
# If you plan on specifying your own fonts you may disable this feature.
default_fonts = ["epaint/default_fonts"]

# Enable additional checks if debug assertions are enabled (debug builds).
extra_debug_asserts = ["epaint/extra_debug_asserts"]
# Always enable additional checks.
extra_asserts = ["epaint/extra_asserts"]

# Add compatability with https://github.com/kvark/mint
mint = ["epaint/mint"]

# enable persistence of memory (window positions etc).
persistence = ["serde", "epaint/serde", "ron"]

# implement serde on most types.
serde = ["dep:serde", "epaint/serde"]


[dependencies]
epaint = { version = "0.17.0", path = "../epaint", default-features = false }

ahash = "0.7"
nohash-hasher = "0.2"

# Optional:
ron = { version = "0.7", optional = true }
serde = { version = "1", optional = true, features = ["derive", "rc"] }
# egui doesn't log much, but when it does, it uses `tracing`
tracing = { version = "0.1", optional = true }
