<?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: crypto plato</title>
    <description>The latest articles on DEV Community by crypto plato (@crypto_plato_26).</description>
    <link>https://dev.to/crypto_plato_26</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3963805%2F1be7fd82-9754-4286-84eb-e956c3f13a4e.png</url>
      <title>DEV Community: crypto plato</title>
      <link>https://dev.to/crypto_plato_26</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/crypto_plato_26"/>
    <language>en</language>
    <item>
      <title>Cron Expressions: a Cron Expressions tool that never sees your data</title>
      <dc:creator>crypto plato</dc:creator>
      <pubDate>Wed, 03 Jun 2026 20:05:43 +0000</pubDate>
      <link>https://dev.to/crypto_plato_26/cron-expressions-a-cron-expressions-tool-that-never-sees-your-data-3o4g</link>
      <guid>https://dev.to/crypto_plato_26/cron-expressions-a-cron-expressions-tool-that-never-sees-your-data-3o4g</guid>
      <description>&lt;p&gt;Most online Cron Expressions tools quietly send what you paste to a server. That's&lt;br&gt;
fine until it isn't — config blobs, tokens, and API responses are exactly the&lt;br&gt;
kind of thing you don't want leaving your machine.&lt;/p&gt;

&lt;p&gt;So &lt;strong&gt;Cron Expressions&lt;/strong&gt; takes the opposite approach: it's a single, self-contained page&lt;br&gt;
that runs entirely in your browser.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://cron.platotools.com/" rel="noopener noreferrer"&gt;Cron Expressions&lt;/a&gt; is 100% in your browser — nothing is uploaded to a server. There's no backend and no API call for the core&lt;br&gt;
function. You can verify it yourself:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the page.&lt;/li&gt;
&lt;li&gt;Open DevTools → &lt;strong&gt;Network&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Use the tool.&lt;/li&gt;
&lt;li&gt;Watch the Network tab stay empty.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The whole thing is one HTML file — &lt;strong&gt;View Source&lt;/strong&gt; shows the JS that runs&lt;br&gt;
everything. It can't leak your data because it never receives it.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;p&gt;Parse Unix, GitHub Actions, Vercel, AWS, Cloudflare cron.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fast, single-purpose, no signup&lt;/li&gt;
&lt;li&gt;Works offline (save the page)&lt;/li&gt;
&lt;li&gt;No tracking beyond a privacy-friendly analytics beacon&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why browser-side matters
&lt;/h2&gt;

&lt;p&gt;The convenient online dev tools we paste into are an under-appreciated&lt;br&gt;
supply-chain risk. The fix isn't a warning banner — it's architecture: if the&lt;br&gt;
tool runs on your machine, there's no breach to have. That's the principle&lt;br&gt;
behind the whole &lt;a href="https://platotools.com/" rel="noopener noreferrer"&gt;platotools.com&lt;/a&gt; set (JSON, JWT,&lt;br&gt;
hashing, encoding, regex, diff) — all client-side, all single-purpose.&lt;/p&gt;

&lt;p&gt;Try it: &lt;strong&gt;&lt;a href="https://cron.platotools.com/" rel="noopener noreferrer"&gt;https://cron.platotools.com/&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you hit an edge case, I'd genuinely like the bug report.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>tools</category>
      <category>privacy</category>
    </item>
    <item>
      <title>JWT Decoder: a jwt decoder tool that never sees your data</title>
      <dc:creator>crypto plato</dc:creator>
      <pubDate>Tue, 02 Jun 2026 06:50:00 +0000</pubDate>
      <link>https://dev.to/crypto_plato_26/jwt-decoder-a-jwt-decoder-tool-that-never-sees-your-data-5e73</link>
      <guid>https://dev.to/crypto_plato_26/jwt-decoder-a-jwt-decoder-tool-that-never-sees-your-data-5e73</guid>
      <description>&lt;p&gt;Most online jwt decoder tools quietly send what you paste to a server. That's&lt;br&gt;
fine until it isn't — config blobs, tokens, and API responses are exactly the&lt;br&gt;
kind of thing you don't want leaving your machine.&lt;/p&gt;

&lt;p&gt;So &lt;strong&gt;JWT Decoder&lt;/strong&gt; takes the opposite approach: it's a single, self-contained page&lt;br&gt;
that runs entirely in your browser.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://jwt.platotools.com/" rel="noopener noreferrer"&gt;JWT Decoder&lt;/a&gt; is 100% in your browser — nothing is uploaded to a server. There's no backend and no API call for the core&lt;br&gt;
function. You can verify it yourself:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the page.&lt;/li&gt;
&lt;li&gt;Open DevTools → &lt;strong&gt;Network&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Use the tool.&lt;/li&gt;
&lt;li&gt;Watch the Network tab stay empty.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The whole thing is one HTML file — &lt;strong&gt;View Source&lt;/strong&gt; shows the JS that runs&lt;br&gt;
everything. It can't leak your data because it never receives it.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;p&gt;Decode JWT header, payload, and claims — expiry countdown, claim notes, 100% browser-side.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fast, single-purpose, no signup&lt;/li&gt;
&lt;li&gt;Works offline (save the page)&lt;/li&gt;
&lt;li&gt;No tracking beyond a privacy-friendly analytics beacon&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why browser-side matters
&lt;/h2&gt;

&lt;p&gt;The convenient online dev tools we paste into are an under-appreciated&lt;br&gt;
supply-chain risk. The fix isn't a warning banner — it's architecture: if the&lt;br&gt;
tool runs on your machine, there's no breach to have. That's the principle&lt;br&gt;
behind the whole &lt;a href="https://platotools.com/" rel="noopener noreferrer"&gt;platotools.com&lt;/a&gt; set (JSON, JWT,&lt;br&gt;
hashing, encoding, regex, diff) — all client-side, all single-purpose.&lt;/p&gt;

&lt;p&gt;Try it: &lt;strong&gt;&lt;a href="https://jwt.platotools.com/" rel="noopener noreferrer"&gt;https://jwt.platotools.com/&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you hit an edge case, I'd genuinely like the bug report.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>tools</category>
      <category>privacy</category>
    </item>
    <item>
      <title>I built a JSON formatter that physically cannot see your data</title>
      <dc:creator>crypto plato</dc:creator>
      <pubDate>Tue, 02 Jun 2026 05:37:51 +0000</pubDate>
      <link>https://dev.to/crypto_plato_26/i-built-a-json-formatter-that-physically-cannot-see-your-data-32hp</link>
      <guid>https://dev.to/crypto_plato_26/i-built-a-json-formatter-that-physically-cannot-see-your-data-32hp</guid>
      <description>&lt;p&gt;In November 2025, watchTowr disclosed that two of the most-used online JSON tools — jsonformatter.org and codebeautify.org — had been quietly exposing 80,000+ pasted JSON blobs through their "Save" feature for roughly five years. The leaked data included AWS keys, GitHub personal access tokens, Active Directory credentials, and database connection strings.&lt;/p&gt;

&lt;p&gt;If you've ever pasted a config or an API response into one of those sites to pretty-print it, that data may have been publicly retrievable.&lt;/p&gt;

&lt;p&gt;Both sites have since re-enabled "Save" with a "public by default" warning. That's a disclosure, not a fix.&lt;/p&gt;

&lt;p&gt;So I built the version that removes the entire class of problem: a JSON formatter with no server.&lt;/p&gt;

&lt;h2&gt;
  
  
  The core idea: there's nowhere for your data to go
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://json.platotools.com/" rel="noopener noreferrer"&gt;json.platotools.com&lt;/a&gt; is a single, self-contained HTML file. All formatting, validation, diffing, and redaction happen in your browser's JavaScript engine. There is no backend, no API call, no telemetry on what you paste.&lt;/p&gt;

&lt;p&gt;You don't have to take my word for it:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the page.&lt;/li&gt;
&lt;li&gt;Open DevTools → Network tab.&lt;/li&gt;
&lt;li&gt;Paste a giant JSON blob and format it.&lt;/li&gt;
&lt;li&gt;Watch the Network tab stay empty.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;No requests fire when you paste. The tool can't leak your data because it never receives it. View Source shows the entire program.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does beyond pretty-printing
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Validator with a collapsible type-tree and JSON Schema inference&lt;/li&gt;
&lt;li&gt;Diff — line-level and semantic (ignore key order)&lt;/li&gt;
&lt;li&gt;Secret redactor — detects ~18 credential patterns (AWS, GitHub PATs, Stripe, OpenAI/Anthropic keys, JWTs, etc.) and replaces them with [REDACTED:TYPE] markers, locally&lt;/li&gt;
&lt;li&gt;JSON ↔ YAML toggle&lt;/li&gt;
&lt;li&gt;Dark mode, mobile down to 360px, keyboard shortcuts&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The engineering constraints
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;12 KB gzipped. No frameworks, no build step, no external requests.&lt;/li&gt;
&lt;li&gt;One HTML file you can save and run offline.&lt;/li&gt;
&lt;li&gt;The redactor's regex bank is in the page source — if you find a secret pattern it misses, you can inspect exactly what it checks for (and I'd genuinely like the bug report).&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why "no server" is the whole point
&lt;/h2&gt;

&lt;p&gt;The convenient online dev tools we all paste into are an under-appreciated supply-chain risk. The fix isn't "trust us, we added a warning" — it's architecture: if the tool runs entirely on your machine, there's no breach to have.&lt;/p&gt;

&lt;p&gt;That principle is the wedge for the rest of the &lt;a href="https://platotools.com/" rel="noopener noreferrer"&gt;platotools.com&lt;/a&gt; tools too (hash, JWT decode, encode/decode, regex, diff) — all browser-side, all single-purpose.&lt;/p&gt;

&lt;p&gt;Try it: &lt;a href="https://json.platotools.com/" rel="noopener noreferrer"&gt;json.platotools.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you spot an edge case the validator or redactor mishandles, I'd love to hear it.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>security</category>
      <category>javascript</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
