libblit is a small 2D graphics library. It aims to provide an API along the lines of the X11 render extension, Plan 9's libdraw, and Go's image/draw package. Another goal is to provide a common interface that can be used with a variety of windowing systems and rendering systems.
Here are some planned rendering and display mechanisms:
VkSurfaceKHR(X11 or Wayland).
wl_shm, attached to
gbm_bocreated for scanout with GBM, exported to DMA-BUF fd, presented directly to display with KMS.
libblit is currently in the design/experimentation phase, so none of the API is final and may change dramatically without notice.