<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Anas Khalid</title>
    <description>The latest articles on DEV Community by Anas Khalid (@trytoolhub).</description>
    <link>https://dev.to/trytoolhub</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4089458%2F2bdb1885-e923-415c-993c-809162038238.png</url>
      <title>DEV Community: Anas Khalid</title>
      <link>https://dev.to/trytoolhub</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/trytoolhub"/>
    <language>en</language>
    <item>
      <title>I built a PDF compressor that never uploads your file — here's the actual technique</title>
      <dc:creator>Anas Khalid</dc:creator>
      <pubDate>Thu, 03 Sep 2026 10:25:56 +0000</pubDate>
      <link>https://dev.to/trytoolhub/i-built-a-pdf-compressor-that-never-uploads-your-file-heres-the-actual-technique-575m</link>
      <guid>https://dev.to/trytoolhub/i-built-a-pdf-compressor-that-never-uploads-your-file-heres-the-actual-technique-575m</guid>
      <description>&lt;p&gt;Added PDF compression to ToolHub, and wanted to write up the actual approach since it wasn't as simple as "just use an API."&lt;/p&gt;

&lt;p&gt;The obvious easy path was a third-party compression API — but that would mean uploading the user's PDF to someone else's server, which directly contradicts the "nothing leaves your browser" thing the rest of the site is built around. So instead: each page gets rendered to an image (reusing the same pdf.js pipeline from an earlier PDF→PowerPoint feature), recompressed with a quality slider using the same canvas technique the Image Compressor already uses, then rebuilt into a new PDF with pdf-lib. Entirely client-side, zero uploads.&lt;/p&gt;

&lt;p&gt;Before touching the real browser code, I tested the whole pipeline in a Node harness — generated a 4.7MB image-heavy test PDF, ran it through the compression logic, got a genuine 72% size reduction, then independently verified the output with pypdf (extracted the actual embedded image and visually confirmed it wasn't corrupted, not just "the script ran without erroring").&lt;/p&gt;

&lt;p&gt;One honest tradeoff worth mentioning: since each page becomes a compressed image, text in the output isn't selectable anymore. Stated plainly in the tool itself rather than hidden — the right fit for image-heavy PDFs (scans, photo-heavy docs), not for anything where staying searchable matters.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://trytoolhub.net/tools/compress-pdf?utm_source=devto&amp;amp;utm_medium=community&amp;amp;utm_campaign=pdf_compress_launch" rel="noopener noreferrer"&gt;ToolHub-PdfCompressor&lt;/a&gt;&lt;/p&gt;

</description>
      <category>frontend</category>
      <category>javascript</category>
      <category>performance</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Foundry &amp; Flame — A Full Restaurant Website + Admin Panel Template (React)</title>
      <dc:creator>Anas Khalid</dc:creator>
      <pubDate>Sat, 29 Aug 2026 04:12:10 +0000</pubDate>
      <link>https://dev.to/trytoolhub/foundry-flame-a-full-restaurant-website-admin-panel-template-react-46d8</link>
      <guid>https://dev.to/trytoolhub/foundry-flame-a-full-restaurant-website-admin-panel-template-react-46d8</guid>
      <description>&lt;p&gt;I built Foundry &amp;amp; Flame, a complete restaurant website template with a working admin panel — menu management, content editing, and a clean customer-facing site out of the box. No more hardcoding menu items or hiring a dev every time a restaurant wants to change a price.&lt;/p&gt;

&lt;p&gt;Built with React, it's meant for freelancers, agencies, or restaurant owners who want something production-ready instead of starting from scratch. &lt;br&gt;
Live demo:&lt;a href="https://modernrestaurant-website.vercel.app/" rel="noopener noreferrer"&gt;Foundry&amp;amp;Flame&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Would love feedback from other devs — especially on the admin UX.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>productivity</category>
      <category>react</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Acted on some feedback about ToolHub's positioning - here's the actual change</title>
      <dc:creator>Anas Khalid</dc:creator>
      <pubDate>Sun, 23 Aug 2026 11:38:21 +0000</pubDate>
      <link>https://dev.to/trytoolhub/acted-on-some-feedback-about-toolhubs-positioning-heres-the-actual-change-o2a</link>
      <guid>https://dev.to/trytoolhub/acted-on-some-feedback-about-toolhubs-positioning-heres-the-actual-change-o2a</guid>
      <description>&lt;p&gt;Post body&lt;/p&gt;

&lt;p&gt;Posted about ToolHub here a bit ago (free tools that run entirely in the browser - image, PDF, dev tools, etc.) and got a comment that stuck with me: the "no upload" angle is real, but I should lean into it hard for anything work-related specifically - contracts, financial data, anything someone would actually worry about touching a random server, not just present it as a generic privacy bullet point.&lt;/p&gt;

&lt;p&gt;That's a sharper, more specific pitch than what was actually on the site, so I went and changed it:&lt;/p&gt;

&lt;p&gt;New homepage section calling this out directly, instead of it being one line among several trust badges&lt;br&gt;
A real blog post on the actual mechanism - what "upload first, process second" tools are doing under the hood, and how to verify any tool's real behavior yourself (open dev tools, watch the Network tab, see if your file gets uploaded at all)&lt;br&gt;
A targeted note directly on the PDF/Word/Excel conversion pages, since that's exactly where someone with a real contract or financial document would land&lt;/p&gt;

&lt;p&gt;Nothing scientific here yet - no A/B test, no real traffic data, just shipped it within the last day or two. Wanted to post the follow-through rather than let the feedback just disappear into a comment thread. Will come back with actual numbers once there's something real to report.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://trytoolhub.net/?utm_source=devto&amp;amp;utm_medium=community&amp;amp;utm_campaign=positioning_update" rel="noopener noreferrer"&gt;TryToolHub&lt;/a&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>I built 45+ free tools that process files entirely in the browser — here's the architecture</title>
      <dc:creator>Anas Khalid</dc:creator>
      <pubDate>Sat, 22 Aug 2026 10:03:49 +0000</pubDate>
      <link>https://dev.to/trytoolhub/i-built-45-free-tools-that-process-files-entirely-in-the-browser-heres-the-architecture-58kh</link>
      <guid>https://dev.to/trytoolhub/i-built-45-free-tools-that-process-files-entirely-in-the-browser-heres-the-architecture-58kh</guid>
      <description>&lt;p&gt;Most free "compress this image" or "convert this PDF" sites work the same way: upload your file to their server, process it, send it back. I built ToolHub to avoid that where possible — most of the 45+ tools on there run entirely in the browser, so the file never actually leaves your device.&lt;/p&gt;

&lt;p&gt;A quick sample of what's on there:&lt;/p&gt;

&lt;p&gt;Image tools — compressor, resizer, cropper, format conversion, all processed client-side with a live before/after preview&lt;br&gt;
PDF tools — merge, split, compress, and conversion to/from Word, Excel, and PowerPoint (that last one was the hardest to build — no good client-side library exists for generating real .pptx files, so I ended up hand-building the OOXML structure and verifying it with python-pptx before shipping)&lt;br&gt;
Developer tools — JSON formatter, regex tester, hash generator, Base64, UUID generator&lt;br&gt;
Color tools — color picker (samples real pixel values from an uploaded image), palette generator, format converters&lt;br&gt;
A couple of social tools — YouTube thumbnail downloader, Instagram image resizer&lt;/p&gt;

&lt;p&gt;Stack: React + Vite frontend, Node/Express/MongoDB backend for the account/history/favorites side — the file processing itself never touches the server.&lt;/p&gt;

&lt;p&gt;Still early on distribution. If anyone's got thoughts on the tools, or on "browser-based, no upload" as a real differentiator vs. just another free tool site, I'd like to hear it.&lt;/p&gt;

&lt;p&gt;&lt;a href="//trytoolhub.net"&gt;TOOLHUB&lt;/a&gt;&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>react</category>
    </item>
  </channel>
</rss>
