23 releases (15 breaking)

Uses new Rust 2024

0.16.0 Sep 13, 2025
0.15.0 Dec 2, 2024
0.14.1 Dec 12, 2023
0.14.0-alpha Sep 8, 2023
0.1.0 Dec 22, 2019

#722 in GUI

Download history 179/week @ 2025-09-12 33/week @ 2025-09-19 28/week @ 2025-09-26 21/week @ 2025-10-03 6/week @ 2025-10-10 17/week @ 2025-10-17 8/week @ 2025-10-24

1,006 downloads per month
Used in 2 crates

Apache-2.0

1MB
20K SLoC

KAS WGPU

KAS graphics backend over wgpu.

Compiling shaders

This library uses GLSL shaders. Pre-compiled SPIR-V modules are distributed so that users do not need a shader compiler.

For working on GLSL shaders, a compiler such as glslc (part of the shaderc project) is required. glslc can be installed from Fedora packages, but on other platforms manual installation may be required. Alternatively a web-based tool such as glslang.js may be used.

Automatic re-compilation may be enabled by setting e.g. SHADERC=glslc. See build.rs for details.

Optional features

This crate has the following feature flags:

  • shaping (enabled by default): use [kas-text]'s default backend (Rustybuzz) for text shaping (alternatively, specify kas-text/harfbuzz or do not use shaping)

By default, this crate uses Swash to raster fonts. This is usually the best choice. As an alternative, fonts can be rastered using ab_glyph; this requires both that the ab_glyph feature is enabled and that the configuration item font.raster.mode is set (see Run-time configuration, RasterConfig::mode).

The COPYRIGHT file includes a list of contributors who claim copyright on this project. This list may be incomplete; new contributors may optionally add themselves to this list.

The KAS library is published under the terms of the Apache License, Version 2.0. You may obtain a copy of this licence from the LICENSE file or on the following webpage: https://www.apache.org/licenses/LICENSE-2.0

Dependencies

~32–74MB
~1M SLoC