Pixel sorting is an algorithmic art technique based around applying sorting algorithms to images.
Recently, I've been playing around with GPU programming (with wgpu) and I was reminded of Acerola's video, where he implements pixel sorting on the GPU. However, for speed, he compromises on the quality of the sort by limiting the span length. I had another idea of how to improve the performance with no compromises and this is the result.
This crate is in rapid development and breaking changes are being made frequently. As such, the code is a bit messy, completely undocumented, and barely tested. My current goal is to add all the features I want / can think of. Once that is complete, I will work on tidying it up and stabilising the API.
The PixelSort library is dual-licensed under either the MIT license or the Apache License Version 2.0 at your option.
examples/source.jpg, examples/source pixel-sorted.jpg, and comparison.png © 2026 Tom Boddaert. All Rights Reserved. May be distributed, unmodified, as part of this repository (https://github.com/tomBoddaert/PixelSort) and any forks, with this license note attached.