Mosaic
Takes a folder of images (as a palette), and an image, and figures out how to tile the palette to resemble the image!
Install / Use
/learn @ahhhh6980/MosaicREADME
Mosaic
This currently only operates on mapping individual pixels, I am working on writing this such that it maps multiple pixels to a single palette item, which is a work in progress.
Let's say you have a collection of images, and you want to put them together in a way that resembles any image you'd like. What this program does, is take as input, a folder of images (our palette), and an input image (what we are trying to recreate).
This basically goes through every item (image) in the palette and finds the average color for each item in the palette. After this process, we can then go through every pixel in our image, and figure out which item from our palette most resembles our pixel. Using this information, we can construct the mosaic by taking the pixels from items in our palette and writing them to a new image.
This can work with any set of images, it doesn't have to be emojis.

To compile:
cargo build --release
To use:
For prompts:
./mosaic
For terminal argument input:
./mosaic --help
command line args:
./mosaic -f Landscape-Color.png -p emoji -fs 256 -ps 16 -v 64.0
- Specify file.png scaled to a max size of 256, using the palette "emoji" scaled to 16x16, with a "variance" of 1/64[^1][^2]
Pass in the extension for the file name!
How Do You Use Other Images?
1 Find a collection of images
- I recommend the 3500+ emojis available from here: https://twemoji.twitter.com/
2 Put the images into a named folder
- In this repo, packaged for convenience, the mentioned collection is named emojis/
3 Put named folder under palettes/
Related Skills
node-connect
343.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
92.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.3kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
