Table of Contents
Open Table of Contents
Overview
Two hundred and forty-two days into ReviByte, I made the biggest structural change since the first post went live: I shut down ReviByte Save — the hub that hosted the TikTok downloader and the Instagram Reels downloader I wrote about at Day 200 — and rebuilt it as ReviByte Tools.
This isn’t a small rename. It’s a change in what that entire section of the site is for.
Why I Retired the Downloaders
The TikTok and Instagram downloaders worked. People used them. But both depended on RapidAPI endpoints to fetch and proxy media from platforms that don’t particularly want that happening, and the more time I spent researching how tools like this are treated — by search engines, by copyright frameworks, by the platforms themselves — the less comfortable I got.
To be clear, this wasn’t a response to any actual penalty. No manual action had hit the domain. This was me looking at the landscape — scraping-adjacent tools, third-party API dependency, platform terms of service, copyright grey areas — and deciding I didn’t want ReviByte’s foundation built on something I didn’t fully control or fully own.
So instead of waiting to find out the hard way, I made the call early: retire both downloaders, delete the RAPIDAPI_KEY from the Vercel project, and stop building anything in that category — no more video downloader tools, TikTok or otherwise.
What Replaced Them
The /save/ route is now ReviByte Tools, and every tool published there follows one rule: it has to run entirely in the browser, with no server-side API calls and no third-party dependency doing the actual work. Here’s what’s live:
🖼️ Image Compressor
Compresses JPG, PNG, and WebP images using the browser’s Canvas API — the image is drawn to an off-screen canvas, re-encoded at an adjustable quality level via canvas.toBlob(), and handed back to the user as a downloadable object URL. Because it uses the File and Blob APIs directly in-browser, the image data never gets uploaded anywhere — there’s no upload step at all, which also means no waiting on a server round-trip.
🔋 Battery Health & Charging Time Estimator
This one leans into my Physics and Electronics background. It estimates charging time and battery degradation using actual charging-curve logic (the way charge rate tapers as a battery approaches full, rather than a flat linear countdown), so it’s closer to a small teaching tool than a gimmick calculator.
📱 QR Code Generator
Generates a downloadable QR code from any text or URL. My first version loaded a QR library from a CDN, but it silently failed — turned out the site’s CSP headers in vercel.json were blocking it. Rather than loosen the CSP, I embedded the MIT-licensed qrcode-generator library directly in the page and draw the code to canvas manually, so the tool makes zero external requests once the page loads.
What’s Coming Next
- PDF Compressor — a natural companion to the Image Compressor, same client-side philosophy
- Phone Comparison tool — side-by-side spec comparisons, tying directly into the mobile gaming and phone content ReviByte already covers
The Bigger Point
The real story here isn’t “I stopped because Google might penalize me.” It’s that I realized I was building a core part of ReviByte on something I didn’t actually own — someone else’s API, someone else’s terms, someone else’s risk — and I replaced it with tools I built and control end to end.
That’s a better foundation regardless of what any platform does next.
242 days in, and the lesson so far is simple: the tools that last are the ones you fully own.




Comments 0
Leave a comment