Private-first image conversion within browsers, powered by WASM ✨
Many image conversion websites require users to upload images to a server, which then converts it and send to the user. The problem is that images might get stored for an indefinite amount of time in these servers, which is not great for privacy. ImageWand does all the image conversion on the client-side, leveraging WebAssembly.
This project was part of my experiments with Golang & WebAssembly. It obviously have space for improvements, so please do open issues if you find that something can be improved. It can be compiled using Golang or TinyGo, although the deployed version uses Golang for now due to Vercel limitations.
A blog post will be available soon with more learnings about the project.
make watch-htmlmake watch-wasm (only works for standard mode)make watch-css: required for UI changes due to TailwindWhen loading the application, it will try to run using tinygo. If you wish to use go, add ?t=go. See all supported ones at ./app/js/imagewand.js.
$ claude mcp add imagewand \
-- python -m otcore.mcp_server <graph>