No data is transmitted; all encoding happens on your device. Open source on GitHub.
Drop a video here or click to choose
MP4, WebM, MOV — anything your browser can play.
Turn it into a high-quality animated GIF, entirely in your browser via WebAssembly. Your video is never uploaded anywhere.
Use the timeline above: click or drag to scrub, step frame‑by‑frame with the ←/→ keys, drag the green handles to crop the ends, and mark a cut start then “Remove section” to delete a middle part (click a red strip to undo). The GIF is built from the kept (green) parts, played back‑to‑back.
Applied left → right: pick an input, map it through a colormap, then a colour filter.
A colormap recolours the image: each pixel’s chosen channel (0–255) is looked up in the colormap. Great for heatmaps and scientific data. Colormaps from matplotlib.
Drop a logo image or click to choose
A PNG with transparency works best — optional
A few sizes from one render — pick whichever is small enough. Speed & loop changes update all of them instantly.
No tracking. No uploads. No sign-up. No ads. This whole thing was vibe-coded with Claude Code and runs entirely on your device.
If it saved you a trip to some sketchy online converter, give it a ⭐.
⭐ Star it on GitHubEverything here runs locally in your browser through WebAssembly. Your video is never uploaded — no server ever sees them.
The GIF encoder is gifski by Kornel Lesi ński, compiled to WebAssembly via gifski-wasm and bundled directly with this page.
License: gifski and gifski-wasm are licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). Because this page distributes the gifski WebAssembly binary to you over a network, the AGPL requires that the corresponding source remain available to you. The bundled copy of the license is included here, the encoder source is at the gifski and gifski-wasm repositories linked above, and the full source of this page is on GitHub.