<?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: mohammedawny59-beep</title>
    <description>The latest articles on DEV Community by mohammedawny59-beep (@mohammedawny59beep).</description>
    <link>https://dev.to/mohammedawny59beep</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%2F4104673%2Fd58b341f-44a9-4a1a-9ae1-12c32bc209e0.png</url>
      <title>DEV Community: mohammedawny59-beep</title>
      <link>https://dev.to/mohammedawny59beep</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mohammedawny59beep"/>
    <language>en</language>
    <item>
      <title>Instead of adding another tool, I changed the toolbox</title>
      <dc:creator>mohammedawny59-beep</dc:creator>
      <pubDate>Fri, 18 Sep 2026 10:13:10 +0000</pubDate>
      <link>https://dev.to/mohammedawny59beep/instead-of-adding-another-tool-i-changed-the-toolbox-3bh</link>
      <guid>https://dev.to/mohammedawny59beep/instead-of-adding-another-tool-i-changed-the-toolbox-3bh</guid>
      <description>&lt;p&gt;QuickTiny started as a small set of browser-based utilities — a JSON formatter, a Base64 encoder/decoder, a word counter, that kind of thing. All client-side, no signup, no upload. Thirteen tools like that, each doing one small job.&lt;/p&gt;

&lt;p&gt;The problem was the thing I kept doing myself every time I used it: I'd copy something, land on the homepage, then have to think about which of the thirteen tools I actually needed, click into it, and paste again.&lt;/p&gt;

&lt;p&gt;So instead of building tool #14, I changed the front door.&lt;/p&gt;

&lt;h2&gt;
  
  
  Paste anything, get the right action
&lt;/h2&gt;

&lt;p&gt;The homepage now has a single box. Paste something into it and QuickTiny looks at it — locally, in your browser, nothing uploaded — and tells you what it probably is, with 1-3 relevant actions.&lt;/p&gt;

&lt;p&gt;A few real examples:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Messy JSON from an LLM&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;Here&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;is&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;the&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;result:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"Mohammed"&lt;/span&gt;&lt;span class="p"&gt;,}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;→ Detected: Messy / LLM JSON → "Repair &amp;amp; Format JSON" → one click takes you to the JSON formatter with the trailing comma fixed and the surrounding text stripped.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Base64&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SGVsbG8gd29ybGQ=
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;→ Detected: Base64 → "Decode Base64" → one click, decoded.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;URL-encoded text&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;%2Fproducts%3Fid%3D123
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;→ Detected: URL encoded → "Decode URL" (or "Inspect URL" for a full breakdown of what's encoded and why).&lt;/p&gt;

&lt;p&gt;It also handles plain valid JSON, Unix timestamps (seconds or milliseconds), multiline/list-like text, and — when none of those confidently match — just falls back to plain text actions like word count or case conversion. It's deliberately conservative: normal sentences with an apostrophe or a stray brace stay "Text" instead of getting misclassified as JSON. A wrong guess is worse than no guess.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;No AI, no API calls, no backend. It's pattern-matching and structural checks running in plain JavaScript: JSON parsing with fallback repair heuristics, a Base64 alphabet + decode-and-check-printability check, percent-encoding validation, a plausible-timestamp range check. The whole thing runs before you finish reading the result — because it's just string parsing, not a network round-trip.&lt;/p&gt;

&lt;p&gt;When you click an action, the input is handed off to the destination tool via sessionStorage (never a URL parameter) and consumed once it arrives, so you land on the right tool with your content already there instead of copying and pasting it again.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://quicktinyv2.vercel.app" rel="noopener noreferrer"&gt;https://quicktinyv2.vercel.app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Would genuinely like feedback — especially on any input that gets classified wrong. That's the one failure mode I care most about here.&lt;/p&gt;

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