Privacy by design
Processing never leaves the browser. No cookies, no trackers, no hidden uploads — just local memory estimates and transparent cleanup.
Drop in any animated GIF and reverse it entirely on your device. Keep frame timing, loop count, and privacy while tracking every processing stage from upload to download.
Drop a .gif file or choose from your device. We only read it in memory and never send it over the network.
Drop your GIF to reverse it
Drag & drop or click to choose · Up to 50 MB supported · Everything stays on this device
Elapsed
00:00
Estimated remaining
--
Memory estimate
--
Designed from the PRD to nail one workflow: reverse a GIF without uploading it anywhere. Every UI element supports that promise.
Processing never leaves the browser. No cookies, no trackers, no hidden uploads — just local memory estimates and transparent cleanup.
Users see five reversal stages with elapsed vs. projected time, fed by structured Worker messages and throttled updates (≤10Hz).
When memory is scarce, we offer “Lower config & retry” presets (scale + frame rate) that still respect loop and timing.
Every reversal runs through a deterministic pipeline that mirrors the PRD’s stage names. Workers stream progress so users always know what’s happening.
Read the file, detect format, and estimate memory footprint before allocating buffers.
Parse frames via gifuct-js depending on file size and browser support.
Reverse the frame order and update timestamps while keeping the original loop count.
Encode frames back into a GIF via gif.js while keeping original loop metadata intact.
Generate blob, filename, and downloadable URL, then release worker memory.
Worker events follow a consistent schema you can hook into for analytics or custom UI. Below is the contract shipped with MVP.
Benchmarks are continuously captured under throttled desktop and mobile profiles so you can trust the median numbers.
Desktop median
≤12s
10 MB / 300 frame / 640×360 GIF reversed end-to-end.
Mobile median
≤18s
Captured on 2024 mid-range Android & iOS Safari with Worker fallback.
Stability
<3% / <6%
Failure rate targets for desktop / mobile, aligned with PRD section 2.
Grounded in the PRD’s FAQ list so support and product stay aligned.
Click “Start reversal”, choose your GIF, and let the Worker pipeline handle decoding, reversing, and encoding. Everything happens in-memory inside your browser — no data ever leaves the session.
We retain original delays and loop metadata, simply reversing the order of frames. The export summary reiterates delay preservation so you can verify timing.
High-resolution or long GIFs may exceed available memory. When estimates detect this, we propose lower-config presets (scaled dimensions、capped frame rate) before processing.
Yes. The Worker listens for a cancel event which flushes memory, terminates encoding, and resets the UI so you can try again or adjust settings.
Spin up the Worker pipeline, track each phase, and download a perfectly reversed animation in seconds.
Compliance snapshot