<?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: JuanDy Barranco</title>
    <description>The latest articles on DEV Community by JuanDy Barranco (@juandybarranco).</description>
    <link>https://dev.to/juandybarranco</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%2F4068007%2Fbb194f53-084f-47b6-9f68-51640e0c531c.jpg</url>
      <title>DEV Community: JuanDy Barranco</title>
      <link>https://dev.to/juandybarranco</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/juandybarranco"/>
    <language>en</language>
    <item>
      <title>I built 18 browser tools that keep your inputs local</title>
      <dc:creator>JuanDy Barranco</dc:creator>
      <pubDate>Sat, 08 Aug 2026 09:00:59 +0000</pubDate>
      <link>https://dev.to/juandybarranco/i-built-18-browser-tools-that-keep-your-inputs-local-1161</link>
      <guid>https://dev.to/juandybarranco/i-built-18-browser-tools-that-keep-your-inputs-local-1161</guid>
      <description>&lt;p&gt;I kept running into the same small technical tasks: formatting JSON, decoding a JWT, calculating an IPv4 subnet, checking a CRC, or converting storage units.&lt;/p&gt;

&lt;p&gt;There are already websites for most of these jobs, but I often hesitated before pasting data into an unfamiliar page. I could not always tell whether the input stayed in my browser, was sent to a server, or ended up in a log somewhere.&lt;/p&gt;

&lt;p&gt;That became the starting point for &lt;strong&gt;Tools in a Tab&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The main constraint: keep tool inputs local
&lt;/h2&gt;

&lt;p&gt;Tools in a Tab is a collection of 18 free browser-based utilities for data, networking, and electronics.&lt;/p&gt;

&lt;p&gt;The important distinction is that the values entered into the tools are processed locally in the browser by default. They are not sent to a Tools in a Tab backend for processing.&lt;/p&gt;

&lt;p&gt;There is also:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No account requirement&lt;/li&gt;
&lt;li&gt;No database handling tool inputs&lt;/li&gt;
&lt;li&gt;No SPA&lt;/li&gt;
&lt;li&gt;No global UI framework&lt;/li&gt;
&lt;li&gt;No server-side processing in the current catalogue&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This approach does not fit every possible tool, but it works well for deterministic transformations and calculations.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is currently included
&lt;/h2&gt;

&lt;p&gt;The data and text group contains tools for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;JSON formatting and validation&lt;/li&gt;
&lt;li&gt;JSON, YAML, and CSV conversion&lt;/li&gt;
&lt;li&gt;Base64 and URL encoding&lt;/li&gt;
&lt;li&gt;JWT decoding&lt;/li&gt;
&lt;li&gt;UUID generation&lt;/li&gt;
&lt;li&gt;SHA-256 hashing&lt;/li&gt;
&lt;li&gt;Text comparison&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The networking group includes IPv4 subnet calculations, CIDR and mask conversion, bandwidth calculations, and IPv4 number representations.&lt;/p&gt;

&lt;p&gt;The electronics group currently includes CRC calculations, LED resistor sizing, resistor color codes, and storage unit conversion.&lt;/p&gt;

&lt;p&gt;Each tool also has an individual static URL, explanatory content, related resources, and reviewed examples.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture
&lt;/h2&gt;

&lt;p&gt;The site is built with Astro and strict TypeScript and deployed as static assets on Cloudflare Workers.&lt;/p&gt;

&lt;p&gt;Astro generates the HTML during the build. Interactive JavaScript is loaded only by pages that need it, and the calculation logic is kept separate from the interface.&lt;/p&gt;

&lt;p&gt;I deliberately avoided adding a backend or database because neither is necessary for the current tools. Apart from reducing infrastructure, this makes the privacy promise easier to understand and verify.&lt;/p&gt;

&lt;p&gt;The site is also available in English and Spanish, with separate canonical URLs and language alternatives.&lt;/p&gt;

&lt;h2&gt;
  
  
  What was harder than expected
&lt;/h2&gt;

&lt;p&gt;The interface was not the most difficult part. The edge cases were.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;Preserving large JSON integers without silently losing precision&lt;/li&gt;
&lt;li&gt;Distinguishing valid JWT decoding from signature verification&lt;/li&gt;
&lt;li&gt;Handling IPv4 &lt;code&gt;/31&lt;/code&gt; and &lt;code&gt;/32&lt;/code&gt; networks correctly&lt;/li&gt;
&lt;li&gt;Supporting multiple CRC models without pretending CRC is one universal algorithm&lt;/li&gt;
&lt;li&gt;Distinguishing decimal GB from binary GiB&lt;/li&gt;
&lt;li&gt;Keeping every result keyboard-accessible on mobile&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Writing tests for known vectors and boundary cases ended up being as important as building the controls.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I would like to learn next
&lt;/h2&gt;

&lt;p&gt;The project is live at:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://toolsinatab.com/en/" rel="noopener noreferrer"&gt;https://toolsinatab.com/en/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I would appreciate honest feedback from developers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Which existing tool would you actually use?&lt;/li&gt;
&lt;li&gt;Is the local-processing explanation clear?&lt;/li&gt;
&lt;li&gt;What useful technical tool is missing?&lt;/li&gt;
&lt;li&gt;Is there any result or edge case you would not trust yet?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I am trying to expand the catalogue based on real usefulness rather than producing a large number of thin tool pages.&lt;/p&gt;

&lt;p&gt;Full disclosure: I built Tools in a Tab.&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>webdev</category>
      <category>typescript</category>
      <category>privacy</category>
    </item>
  </channel>
</rss>
