[package] name = "hui" description = "Simple UI library for games and other interactive applications" repository = "https://github.com/griffi-gh/hui" readme = "../README.md" authors = ["griffi-gh "] rust-version = "1.75" version = "0.1.0-alpha.5" edition = "2021" license = "GPL-3.0-or-later" publish = true include = [ "assets/**/*", "src/**/*.rs", "Cargo.toml", ] [dependencies] hui-derive = { version = "0.1.0-alpha.5", path = "../hui-derive", optional = true } hui-shared = { version = "0.1.0-alpha.5", path = "../hui-shared" } hui-painter = { version = "0.1.0-alpha.5", path = "../hui-painter" } hashbrown = "0.14" nohash-hasher = "0.2" glam = "0.28.0" fontdue = "0.9" rect_packer = "0.2" log = "0.4" document-features = "0.2" derive_setters = "0.1" derive_more = "0.99" tinyset = "0.4" image = { version = "0.25", default-features = false, optional = true } rustc-hash = "2.0" [features] default = ["el_all", "image", "builtin_font", "pixel_perfect_text", "derive"] ## Enable derive macros derive = ["dep:hui-derive"] ## Enable image loading support using the `image` crate image = ["dep:image"] ## Enable the built-in font (ProggyTiny, adds *35kb* to the executable) builtin_font = [] #! #### Pixel-perfect rendering: ## Round all vertex positions to nearest integer coordinates (not recommended) pixel_perfect = ["pixel_perfect_text"] ## Apply pixel-perfect rendering hack to text (fixes blurry text rendering) pixel_perfect_text = [] #! Make sure to disable both features if you are not rendering UI "as-is" at 1:1 scale\ #! For exmaple, you should disable them if using DPI (or any other form of) scaling while passing the virtual resolution to the ui or rendering it in 3d space #! #### Built-in elements: ## Enable all built-in elements el_all = [ "el_container", "el_frame_view", "el_spacer", "el_br", "el_text", "el_image", "el_progress_bar", "el_slider", "el_transformer", "el_interactable", ] ## Enable the built-in `Container` element el_container = [] ## Enable the built-in `FrameView` element el_frame_view = [] ## Enable the built-in `Spacer` element el_spacer = [] ## Enable the built-in `Break` element el_br = [] ## Enable the built-in `Text` element el_text = [] ## Enable the built-in `Image` element el_image = [] ## Enable the built-in `ProgressBar` element el_progress_bar = [] ## Enable the built-in `Slider` element el_slider = [] ## Enable the built-in `Transformer` element el_transformer = [] ## Enable the built-in `Interactable` element el_interactable = [] # ## Enable multi-threading support (currently only affects some 3rd-party libraries) # parallel = ["fontdue/parallel"]