Font introspection, complex text shaping and glyph rendering.
Rust
877
200 commits
updated Jul 17, 2026
Swash is a pure Rust, cross-platform crate that provides font introspection, complex text shaping and glyph rendering.
This crate aims to lay the foundation for a cross-platform, high performance set of components for beautiful typography. In particular, this library focuses on fonts and operations that are directly applicable to them. For the most part, the desire is to be unopinionated with respect to resource management, higher level layout and lower level rendering.
Due to the intention of being generally useful and easy to integrate, the following areas of related interest are specifically avoided:
Text layout. This is highly application specific and the requirements for both features and performance differ greatly among web browsers, word processors, text editors, game engines, etc. There is a sibling crate in development that does provide general purpose text layout based on this library.
Composition. Like layout, this is also application specific in addition to being hardware dependent. Glyph caching, geometry batching and rendering all belong here and should integrate well with the application and the hardware environment.
Licensed under either of
at your option.
Contributions are welcome by pull request. The Rust code of conduct applies.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.
Overall
Maintained
Code review
crates.io
Latest release
Releases this year
(top 24 of 62)
662 followers · starred Aug 2021
3,940 followers · starred May 2021
334 followers · starred May 2023
2,276 followers · starred Sep 2021
Font introspection, complex text shaping and glyph rendering.
Rust
877
200 commits
updated Jul 17, 2026
Swash is a pure Rust, cross-platform crate that provides font introspection, complex text shaping and glyph rendering.
This crate aims to lay the foundation for a cross-platform, high performance set of components for beautiful typography. In particular, this library focuses on fonts and operations that are directly applicable to them. For the most part, the desire is to be unopinionated with respect to resource management, higher level layout and lower level rendering.
Due to the intention of being generally useful and easy to integrate, the following areas of related interest are specifically avoided:
Text layout. This is highly application specific and the requirements for both features and performance differ greatly among web browsers, word processors, text editors, game engines, etc. There is a sibling crate in development that does provide general purpose text layout based on this library.
Composition. Like layout, this is also application specific in addition to being hardware dependent. Glyph caching, geometry batching and rendering all belong here and should integrate well with the application and the hardware environment.
Licensed under either of
at your option.
Contributions are welcome by pull request. The Rust code of conduct applies.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.
Overall
Maintained
Code review
crates.io
Latest release
Releases this year
(top 24 of 62)
662 followers · starred Aug 2021
3,940 followers · starred May 2021
334 followers · starred May 2023
2,276 followers · starred Sep 2021