This provides ordered pattern and error diffusion (e.g., FS), but ordered pattern dithering is the interesting/fun one (and faster).


Ordered patterns:
- ClusteredDot4x4 (example above)
- ClusteredDot6x6
- ClusteredDot6x6_2
- ClusteredDot6x6_3
- ClusteredDot8x8
- ClusteredDotDiagonal16x16
- ClusteredDotDiagonal6x6
- ClusteredDotDiagonal8x8
- ClusteredDotDiagonal8x8_2
- ClusteredDotDiagonal8x8_3
- ClusteredDotHorizontalLine
- ClusteredDotSpiral5x5
- ClusteredDotVerticalLine
- Horizontal3x5
- Vertical5x3
Error diffusion:
- Atkinson
- Burkes
- FalseFloydSteinberg
- FloydSteinberg
- JarvisJudiceNinke
- Sierra
- Sierra2
- Sierra2_4A
- Sierra3
- SierraLite
- Simple2D
- StevenPigeon
- Stucki
- TwoRowSierra
And you get to provide the palette… b/w is obvious for grayscale, but you could also do things like feed it the slice returned by Hugo’s .Colors method.
Although this project has some problems that it acknowledges in the Readme, monetizing blogs is a great idea (Ghost is doing it as a service). It’d be great if Monetization was shipped as part of the binary for each user to do on their own hosting platform.
With Pkl we could give people a warning when they set baseURL = "" and solve a good chunk of support requests to this forum
.
That one is built with Java and I suspect not a great fit in Hugo. There’s a similar “thing” called cue-lang – which is written in Go.
pkl do have Go integration out of the box. But I mainly thought the idea of conf validation was neat.