I wanted a simple image converter that didn't upload my files anywhere. Every tool I found either required a sign-up, plastered ads over the download button, or silently shipped my photos to a server I didn't control. So I built my own — and AI wrote most of the code.
The Idea
The core concept is straightforward: compile a proven C++ image library to WebAssembly so it runs directly in the browser. No server, no upload, no privacy compromise. The Magnum graphics library already supports dozens of image formats through a clean plugin architecture. The question was whether I could wrap it in a usable web interface in a single weekend.
Where AI Helped
- HTML/CSS scaffolding — the drag-and-drop interface, responsive layout, and styling were generated in minutes
- JavaScript glue code — the Web Worker setup, file handling, and download triggering were straightforward for the AI to produce
- SEO metadata — Open Graph tags, meta descriptions, and sitemap generation were generated from a single prompt
- Astro migration — moving from static HTML to an Astro static site with dynamic routes and shared layouts
Where AI Didn't Help
The C++ and Emscripten side was harder. Configuring the CMake build system, choosing the right Magnum plugins, handling memory allocation between JavaScript and WASM — these required domain knowledge the AI could approximate but not reliably get right on the first try.
The Stack
- C++ / Magnum — battle-tested image decoding and encoding
- Emscripten — compiles C++ to WebAssembly
- Web Workers — four parallel workers handle batch conversions
- Astro — static site generator
WebConverter.app is free and open source. You can convert images to PNG, JPEG, BMP, and several other formats — all without uploading a single byte.
Handa ka na bang i-convert ang iyong mga larawan?
Subukan ang WebConverter nang Libre