<?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: Neo Ahn</title>
    <description>The latest articles on DEV Community by Neo Ahn (@neo_ahn_10b3fe6a057e7deab).</description>
    <link>https://dev.to/neo_ahn_10b3fe6a057e7deab</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%2F3847278%2Fccdfe805-b13c-422a-859b-fe8f810a881c.png</url>
      <title>DEV Community: Neo Ahn</title>
      <link>https://dev.to/neo_ahn_10b3fe6a057e7deab</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/neo_ahn_10b3fe6a057e7deab"/>
    <language>en</language>
    <item>
      <title>I Built 22 Free Developer Tools in a Weekend — Here's What I Learned</title>
      <dc:creator>Neo Ahn</dc:creator>
      <pubDate>Sat, 28 Mar 2026 08:15:10 +0000</pubDate>
      <link>https://dev.to/neo_ahn_10b3fe6a057e7deab/i-built-22-free-developer-tools-in-a-weekend-heres-what-i-learned-4kml</link>
      <guid>https://dev.to/neo_ahn_10b3fe6a057e7deab/i-built-22-free-developer-tools-in-a-weekend-heres-what-i-learned-4kml</guid>
      <description>&lt;h2&gt;
  
  
  The Idea
&lt;/h2&gt;

&lt;p&gt;I kept bookmarking random utility sites — one for JSON diff, another for regex testing, another for Base64 encoding. Each&lt;br&gt;
  had different UIs, aggressive ads, and some even sent my data to their servers.&lt;/p&gt;

&lt;p&gt;So I built &lt;strong&gt;&lt;a href="https://mydevtools.dev" rel="noopener noreferrer"&gt;mydevtools.dev&lt;/a&gt;&lt;/strong&gt; — 22 developer tools in one place, with a consistent VS Code-style&lt;br&gt;
  dark theme, and everything processing 100% in the browser.&lt;/p&gt;

&lt;p&gt;## What's Inside&lt;/p&gt;

&lt;p&gt;### Data &amp;amp; Text&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;JSON Diff&lt;/strong&gt; — Side-by-side comparison using Monaco Editor&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;JSON Formatter&lt;/strong&gt; — Beautify, minify, validate&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Text Diff&lt;/strong&gt; — Line-by-line text comparison&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CSV to JSON&lt;/strong&gt; — Bidirectional conversion&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;JSON to YAML&lt;/strong&gt; — Bidirectional conversion&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Word Counter&lt;/strong&gt; — Words, characters, sentences, reading time&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;### Encoding &amp;amp; Conversion&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Base64 Encoder/Decoder&lt;/strong&gt; — Full UTF-8 support&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;URL Encoder/Decoder&lt;/strong&gt; — With query string parser&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HTML Entity Encoder&lt;/strong&gt; — Escape/unescape HTML&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Number Base Converter&lt;/strong&gt; — Binary, octal, decimal, hex&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;### Security &amp;amp; Identity&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;JWT Decoder&lt;/strong&gt; — Header, payload, expiration check&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hash Generator&lt;/strong&gt; — MD5, SHA-1, SHA-256, SHA-384, SHA-512&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;UUID Generator&lt;/strong&gt; — Bulk generate with format options&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Password Generator&lt;/strong&gt; — Customizable strength, bulk mode&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;### Developer Utilities&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Regex Tester&lt;/strong&gt; — Real-time matching, 18 pattern presets, URL sharing&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cron Expression Parser&lt;/strong&gt; — Human-readable explanations, next run times&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Timestamp Converter&lt;/strong&gt; — Unix ↔ date, live current time&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Markdown Preview&lt;/strong&gt; — Live editor with rendered output&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;### Visual &amp;amp; Media&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Color Converter&lt;/strong&gt; — HEX ↔ RGB ↔ HSL with live preview&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;QR Code Generator&lt;/strong&gt; — Customizable size, download as PNG&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Image to Base64&lt;/strong&gt; — Drag &amp;amp; drop, multiple output formats&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lorem Ipsum Generator&lt;/strong&gt; — Words, sentences, paragraphs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;## Tech Stack&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Next.js 16&lt;/strong&gt; (App Router, SSG for SEO)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tailwind CSS 4&lt;/strong&gt; (VS Code-inspired dark theme)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TypeScript&lt;/strong&gt; (strict mode)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Vercel&lt;/strong&gt; (free tier hosting)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No backend&lt;/strong&gt; — everything runs client-side&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Total hosting cost: $0/month (excluding domain).&lt;/p&gt;

&lt;p&gt;## Key Decisions&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why no external libraries for most tools?&lt;/strong&gt;&lt;br&gt;
  Base64 uses &lt;code&gt;btoa&lt;/code&gt;/&lt;code&gt;atob&lt;/code&gt;, hashing uses Web Crypto API, UUID uses &lt;code&gt;crypto.randomUUID()&lt;/code&gt;. The only external packages are&lt;br&gt;
  Monaco Editor (for JSON Diff), &lt;code&gt;qrcode&lt;/code&gt; (for QR generation), and &lt;code&gt;jsondiffpatch&lt;/code&gt; (for structural JSON comparison). Keeping&lt;br&gt;
  dependencies minimal means faster load times and fewer security concerns.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why VS Code theme?&lt;/strong&gt;&lt;br&gt;
  Developers already spend 8+ hours a day in VS Code. A familiar dark theme means zero cognitive load switching between tools.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why 100% client-side?&lt;/strong&gt;&lt;br&gt;
  Privacy is a feature. When you paste a JWT token or API response into a tool, you don't want it hitting someone else's&lt;br&gt;
  server. Every tool on the site processes data entirely in your browser.&lt;/p&gt;

&lt;p&gt;## SEO Strategy&lt;/p&gt;

&lt;p&gt;Each tool has its own page with unique metadata. The regex tester has 15 pattern-specific landing pages&lt;br&gt;
  (&lt;code&gt;/regex/patterns/email&lt;/code&gt;, &lt;code&gt;/regex/patterns/url&lt;/code&gt;, etc.) targeting long-tail keywords. Total: 39 indexed pages from a single&lt;br&gt;
  project.&lt;/p&gt;

&lt;p&gt;## What's Next&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Adsense integration (once approved)&lt;/li&gt;
&lt;li&gt;More tools based on user feedback&lt;/li&gt;
&lt;li&gt;Additional SEO content pages&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;## Try It&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://mydevtools.dev" rel="noopener noreferrer"&gt;mydevtools.dev&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What tools do you wish existed? Drop a comment — I might build it next.&lt;/p&gt;

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