#wayland-client #wayland #client

smithay-client-toolkit

Toolkit for making client wayland applications

50 releases

0.19.2 Jul 15, 2024
0.18.1 Feb 8, 2024
0.18.0 Oct 10, 2023
0.17.0 Apr 5, 2023
0.2.6 Jul 14, 2018

#19 in GUI

Download history 106765/week @ 2024-08-15 118951/week @ 2024-08-22 109513/week @ 2024-08-29 114979/week @ 2024-09-05 111216/week @ 2024-09-12 112066/week @ 2024-09-19 126998/week @ 2024-09-26 108495/week @ 2024-10-03 108548/week @ 2024-10-10 111395/week @ 2024-10-17 109441/week @ 2024-10-24 109697/week @ 2024-10-31 94307/week @ 2024-11-07 128303/week @ 2024-11-14 97376/week @ 2024-11-21 81612/week @ 2024-11-28

421,032 downloads per month
Used in 869 crates (29 directly)

MIT license

405KB
9K SLoC

crates.io docs.rs Build Status

Smithay's Client Toolkit

This crate is a toolkit for writing wayland clients in rust, on top of wayland-client.

Currently a work in progress, it currently provides the following utilities:

  • Automatic binding of general wayland globals (wl_compositor, wl_shm, etc..)
  • Abstraction to create windows (aka toplevel surfaces), abstracting the interaction with the shell (xdg_shell or wl_shell) and the drawing of decorations
  • Wrapper for wl_keyboard for automatic keymap interpretation using libxkbcommon.so.
  • Utilites for creating dpi aware surfaces.

Documentation

The documentation for the master branch is available online.

The documentation for the releases can be found on docs.rs.

Requirements

Requires at least rust 1.65 to be used and version 1.15 of the wayland system libraries if using the system backend.

Dependencies

~6–15MB
~207K SLoC