<?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: Mikalai Amusin</title>
    <description>The latest articles on DEV Community by Mikalai Amusin (@mikalai_amusin_85f39114a7).</description>
    <link>https://dev.to/mikalai_amusin_85f39114a7</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%2F3802236%2F67c980d7-535c-40b5-9972-b91bbdd3a7d5.png</url>
      <title>DEV Community: Mikalai Amusin</title>
      <link>https://dev.to/mikalai_amusin_85f39114a7</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mikalai_amusin_85f39114a7"/>
    <language>en</language>
    <item>
      <title>I Built 13 Free Developer Tools With Zero Dependencies</title>
      <dc:creator>Mikalai Amusin</dc:creator>
      <pubDate>Mon, 02 Mar 2026 18:56:25 +0000</pubDate>
      <link>https://dev.to/mikalai_amusin_85f39114a7/i-built-13-free-developer-tools-with-zero-dependencies-4i7a</link>
      <guid>https://dev.to/mikalai_amusin_85f39114a7/i-built-13-free-developer-tools-with-zero-dependencies-4i7a</guid>
      <description>&lt;p&gt;I got frustrated. Every time I needed to format JSON, generate a password, or test a regex, I'd end up on some bloated website filled with popups, cookie banners, and suspiciously slow load times.&lt;/p&gt;

&lt;p&gt;So I built &lt;strong&gt;&lt;a href="https://toolpilot-mu.vercel.app" rel="noopener noreferrer"&gt;ToolPilot&lt;/a&gt;&lt;/strong&gt; — a collection of 13 free browser tools that are fast, beautiful, and completely free. No signup. No paywalls. No tracking.&lt;/p&gt;

&lt;h2&gt;
  
  
  🛠️ The Tools
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;JSON Formatter&lt;/strong&gt; — Beautify, minify &amp;amp; validate with syntax highlighting&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Regex Tester&lt;/strong&gt; — Live match highlighting + common patterns library&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Password Generator&lt;/strong&gt; — Cryptographically secure via &lt;code&gt;crypto.getRandomValues()&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;QR Code Generator&lt;/strong&gt; — URL, text, WiFi, email, phone — PNG/SVG download&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CSS Gradient Generator&lt;/strong&gt; — Linear, radial, conic — 10 presets + CSS export&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Box Shadow Generator&lt;/strong&gt; — Multi-layer visual editor with 8 presets&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hash Generator&lt;/strong&gt; — MD5, SHA-1, SHA-256, SHA-512 via Web Crypto API&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Color Palette&lt;/strong&gt; — 5 harmony modes + CSS export&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Markdown Preview&lt;/strong&gt; — Live side-by-side editor&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Word Counter&lt;/strong&gt; — Stats + keyword density analysis&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unit Converter&lt;/strong&gt; — Length, weight, temp, speed, data&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Base64 Codec&lt;/strong&gt; — Encode/decode with Unicode support&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Lorem Ipsum&lt;/strong&gt; — Paragraphs, sentences, or words&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ⚡ The Stack (Zero Dependencies)
&lt;/h2&gt;

&lt;p&gt;This is where it gets interesting. ToolPilot has &lt;strong&gt;zero runtime dependencies&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Vanilla JS&lt;/strong&gt; — no React, no Vue, no Angular&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Vanilla CSS&lt;/strong&gt; — no Tailwind, no Bootstrap&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Vite&lt;/strong&gt; — for dev server and build only&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Total bundle:&lt;/strong&gt; ~30KB gzipped&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Why? Because utility tools shouldn't need a 2MB JavaScript bundle to format a string. Every tool loads instantly and responds in under 50ms.&lt;/p&gt;

&lt;h2&gt;
  
  
  🎨 The Design
&lt;/h2&gt;

&lt;p&gt;I didn't want this to look like "just another utility site." ToolPilot features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Animated aurora background&lt;/strong&gt; — floating gradient orbs that drift continuously&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Star particle field&lt;/strong&gt; — 40 twinkling dots across the viewport&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Micro-animations&lt;/strong&gt; — spring physics on buttons, smooth card entrances&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dark/Light mode&lt;/strong&gt; — with persistent preference via localStorage&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keyboard shortcuts&lt;/strong&gt; — &lt;code&gt;⌘K&lt;/code&gt; to focus input, &lt;code&gt;⌘/&lt;/code&gt; to toggle theme&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🔒 Privacy First
&lt;/h2&gt;

&lt;p&gt;Every single tool processes data &lt;strong&gt;locally in your browser&lt;/strong&gt;. Nothing is ever sent to a server. Your JSON, your passwords, your regex patterns — they never leave your machine.&lt;/p&gt;

&lt;h2&gt;
  
  
  🔧 How I Built It
&lt;/h2&gt;

&lt;p&gt;The key architectural decision was using &lt;strong&gt;Vite's multi-page app (MPA) mode&lt;/strong&gt;. Each tool gets its own HTML entry point:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;tools/
├── json-formatter/
│   ├── index.html
│   └── main.js
├── regex-tester/
│   ├── index.html
│   └── main.js
└── ... (13 tools)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This means:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Each tool can rank independently on Google&lt;/li&gt;
&lt;li&gt;Users only load the code they need&lt;/li&gt;
&lt;li&gt;Adding a new tool is just creating a folder with 2 files&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Shared code lives in &lt;a&gt;src/shared.js&lt;/a&gt; — navigation, footer, theme management, clipboard utilities, aurora background renderer, and keyboard shortcuts.&lt;/p&gt;

&lt;h2&gt;
  
  
  📈 What's Next
&lt;/h2&gt;

&lt;p&gt;I'm planning to add more tools based on user feedback. Some ideas:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Image compressor (client-side)&lt;/li&gt;
&lt;li&gt;CSS Flexbox playground&lt;/li&gt;
&lt;li&gt;JWT decoder&lt;/li&gt;
&lt;li&gt;Cron expression builder&lt;/li&gt;
&lt;li&gt;Timestamp converter&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try It Out
&lt;/h2&gt;

&lt;p&gt;👉 &lt;strong&gt;&lt;a href="https://toolpilot-mu.vercel.app" rel="noopener noreferrer"&gt;toolpilot-mu.vercel.app&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It's also &lt;strong&gt;open source&lt;/strong&gt; — contributions welcome!&lt;br&gt;
👉 &lt;strong&gt;&lt;a href="https://github.com/mikalai-amusin/toolpilot" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Found a bug or want a new tool? &lt;a href="https://github.com/mikalai-amusin/toolpilot/issues" rel="noopener noreferrer"&gt;Open an issue&lt;/a&gt; — I ship fast.&lt;/p&gt;




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

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