<?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: huali</title>
    <description>The latest articles on DEV Community by huali (@huali).</description>
    <link>https://dev.to/huali</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%2F4199690%2F370b62c9-d98d-45bd-8ce3-c489cbc42978.png</url>
      <title>DEV Community: huali</title>
      <link>https://dev.to/huali</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/huali"/>
    <language>en</language>
    <item>
      <title>How I Built a Privacy-First Loan Calculator with Pure HTML and AI</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Sun, 15 Nov 2026 02:03:24 +0000</pubDate>
      <link>https://dev.to/huali/how-i-built-a-privacy-first-loan-calculator-with-pure-html-and-ai-2134</link>
      <guid>https://dev.to/huali/how-i-built-a-privacy-first-loan-calculator-with-pure-html-and-ai-2134</guid>
      <description>&lt;p&gt;As a solo indie developer, I hate heavy backend architectures for simple tools. &lt;/p&gt;

&lt;p&gt;When I decided to build a financial calculator, I had two goals: it had to be 100% private for the user, and it had to load instantly. &lt;/p&gt;

&lt;p&gt;Here is how I built the &lt;strong&gt;Lihayo Loan Calculator&lt;/strong&gt; using pure HTML, CSS, JavaScript, and AI.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The Math (Amortization Formula)
&lt;/h3&gt;

&lt;p&gt;The core of any loan calculator is the amortization formula: &lt;br&gt;
&lt;code&gt;M = P * r * (1 + r)^n / ((1 + r)^n - 1)&lt;/code&gt;&lt;br&gt;
Instead of relying on a server to run this math, all calculations happen directly in the user's browser. This means zero data is sent over the network. &lt;/p&gt;

&lt;h3&gt;
  
  
  2. Visualizing the Data with Chart.js
&lt;/h3&gt;

&lt;p&gt;Numbers are boring. I wanted users to see how much of their money goes to principal vs. interest. I used Chart.js to create a dynamic doughnut chart that updates in real-time as the user types. It makes the financial reality much clearer.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Generating the Amortization Schedule
&lt;/h3&gt;

&lt;p&gt;I used a simple JavaScript loop to generate a full month-by-month breakdown of the loan, including payment date, principal portion, interest portion, and remaining balance. No backend required.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Using AI for Speed
&lt;/h3&gt;

&lt;p&gt;I used AI (like DeepSeek) to generate the CSS framework and debug edge cases (like handling leap years in the date calculations). It cut my development time in half.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Result
&lt;/h3&gt;

&lt;p&gt;You can try the tool here. It's completely free, ad-free, and runs entirely in your browser.&lt;br&gt;
👉 &lt;a href="https://app.lihayo.com/loan/" rel="noopener noreferrer"&gt;https://app.lihayo.com/loan/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I also built a fully functional &lt;code&gt;&amp;lt;iframe&amp;gt;&lt;/code&gt; embed version for other bloggers to use. Let me know what you think of the UI!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>showdev</category>
      <category>ai</category>
    </item>
    <item>
      <title>Why You Should Read an Amortization Schedule Before Signing Any Loan</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Wed, 11 Nov 2026 07:52:47 +0000</pubDate>
      <link>https://dev.to/huali/why-you-should-read-an-amortization-schedule-before-signing-any-loan-48fd</link>
      <guid>https://dev.to/huali/why-you-should-read-an-amortization-schedule-before-signing-any-loan-48fd</guid>
      <description>&lt;p&gt;When most people take out a loan, they only look at two numbers: the monthly payment and the interest rate. &lt;/p&gt;

&lt;p&gt;That’s a mistake. The real story is hidden in the &lt;strong&gt;amortization schedule&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;An amortization schedule is a table that shows exactly how each monthly payment is split between principal and interest over the life of the loan. Here is why it matters:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Early Payments Are Mostly Interest
&lt;/h3&gt;

&lt;p&gt;In the first few years of a standard 30-year mortgage, a massive portion of your payment goes straight to the bank as interest, and only a tiny fraction actually reduces your principal balance. If you sell your house in 3 years, you might be shocked to find out how little of the loan you’ve actually paid off.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. It Reveals the Power of Extra Payments
&lt;/h3&gt;

&lt;p&gt;Let’s say you have a $300,000 mortgage at 6%. If you make an extra $100 payment every month strictly toward the principal, the compounding effect is massive. You could shave years off your loan term and save tens of thousands of dollars in interest. You won’t see this magic unless you run the numbers.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. It Exposes Hidden Fees
&lt;/h3&gt;

&lt;p&gt;If your actual amortization schedule doesn’t match your expected calculations, it means the lender rolled fees or prepaid interest into the loan balance.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Bottom Line
&lt;/h3&gt;

&lt;p&gt;Don't sign a 30-year contract blindly. Run the math first. &lt;/p&gt;

&lt;p&gt;I actually built a free, privacy-first financial tool matrix to help with this. No pop-ups, no signups, 100% client-side. You can generate a full visual amortization schedule and test "extra payment" scenarios instantly. &lt;/p&gt;

&lt;p&gt;Check it out here: &lt;a href="https://app.lihayo.com/loan/" rel="noopener noreferrer"&gt;https://app.lihayo.com/loan/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you are building financial tools, I also included a dynamic chart and an embeddable widget in the code. Let me know what you think!&lt;/p&gt;

</description>
      <category>finance</category>
      <category>personalfinance</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How I Built a Free, Ad-Free Loan Calculator Using Pure HTML, Chart.js, and AI</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Sun, 08 Nov 2026 06:29:04 +0000</pubDate>
      <link>https://dev.to/huali/how-i-built-a-free-ad-free-loan-calculator-using-pure-html-chartjs-and-ai-aol</link>
      <guid>https://dev.to/huali/how-i-built-a-free-ad-free-loan-calculator-using-pure-html-chartjs-and-ai-aol</guid>
      <description>&lt;p&gt;Have you ever tried to use a simple online loan calculator, only to be hit with intrusive pop-ups, banner ads, and a mandatory signup form? I got tired of it.&lt;/p&gt;

&lt;p&gt;As an indie developer, I wanted to build a tool that just works. No signups, no servers, no tracking. Everything runs locally in your browser.&lt;/p&gt;

&lt;p&gt;Here is how I built the Loan Calculator on Lihayo Tools using pure HTML, Chart.js, and AI.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Core: Pure Client-Side JavaScript
&lt;/h3&gt;

&lt;p&gt;The most important rule was "no backend." Every calculation happens on the user's device. This guarantees 100% privacy. When a user enters their loan amount, interest rate, and term, the JavaScript instantly calculates the amortization formula: M = P * r * (1 + r)^n / ((1 + r)^n - 1).&lt;/p&gt;

&lt;h3&gt;
  
  
  Visualizing the Data with Chart.js
&lt;/h3&gt;

&lt;p&gt;Numbers alone can be boring. To help users understand how much of their payment goes to interest vs. principal, I integrated Chart.js. A simple doughnut chart updates in real-time as the user types. It makes the financial reality very clear.&lt;/p&gt;

&lt;h3&gt;
  
  
  Generating the Amortization Schedule
&lt;/h3&gt;

&lt;p&gt;Users don't just want the monthly payment; they want the full breakdown. Using a simple JavaScript loop, the app generates a month-by-month table showing the payment date, principal portion, interest portion, and remaining balance.&lt;/p&gt;

&lt;h3&gt;
  
  
  Using AI to Accelerate Development
&lt;/h3&gt;

&lt;p&gt;I am a solo developer, and AI (like DeepSeek and ChatGPT) was my co-pilot. I used AI to quickly scaffold the HTML structure, write the CSS variables for a clean UI, and debug the date overflow issues in the amortization table.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Result
&lt;/h3&gt;

&lt;p&gt;You can try the final product here. It is completely free, loads instantly, and has zero ads (for now, I might add minimal Google AdSense to keep the lights on).&lt;/p&gt;

&lt;p&gt;Check out the tool here: &lt;a href="https://app.lihayo.com/loan/" rel="noopener noreferrer"&gt;https://app.lihayo.com/loan/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Building tools in public is an amazing experience. If you have any feedback on the UI or the math, let me know!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>showdev</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Why Most Student Loan Calculators Are Ad Traps (And How to Find a Clean One)</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Thu, 05 Nov 2026 03:12:47 +0000</pubDate>
      <link>https://dev.to/huali/why-most-student-loan-calculators-are-ad-traps-and-how-to-find-a-clean-one-238</link>
      <guid>https://dev.to/huali/why-most-student-loan-calculators-are-ad-traps-and-how-to-find-a-clean-one-238</guid>
      <description>&lt;p&gt;If you've ever searched for a "student loan calculator", you know the drill. You land on a page, and before you can even enter your loan amount, you're hit with pop-ups, banner ads, and a mandatory signup form. Most of these tools are designed to capture your email or push you toward a refinancing offer, not to give you a clean, honest answer.&lt;/p&gt;

&lt;p&gt;That's the problem with ad-heavy calculators. They distract from the math.&lt;/p&gt;

&lt;p&gt;The math itself is simple. If you have a $35,000 loan at 6.5% interest over 10 years, your monthly payment is fixed. But what most calculators don't show you is the real lever: extra payments. &lt;/p&gt;

&lt;p&gt;Here's a fact that often gets buried under ads: even a small extra monthly payment can save you thousands in interest and shave years off your loan. For example, on a $35,000 loan at 6.5%, putting an extra $100 per month toward the principal can drastically reduce the total interest you pay over the life of the loan. &lt;/p&gt;

&lt;p&gt;The reason is simple: extra payments go directly to the principal balance. When the principal drops, the interest charged in subsequent months drops too. It's a compounding effect in your favor.&lt;/p&gt;

&lt;p&gt;So how do you find a calculator that actually helps you? Look for three things:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;No login required. A calculator should work instantly, without asking for your email.&lt;/li&gt;
&lt;li&gt;No pop-ups or ads. A clean interface means you can focus on the numbers.&lt;/li&gt;
&lt;li&gt;A visual chart. Seeing the split between principal and interest makes the math intuitive. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I built a free, no-ads student loan calculator that does exactly this. It includes an "Extra Monthly Payment" field and a real-time chart. You can try it here: &lt;a href="https://app.lihayo.com/student-loan-calculator/" rel="noopener noreferrer"&gt;https://app.lihayo.com/student-loan-calculator/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The goal is simple: give people a clean tool to see the truth about their loans, without the noise. &lt;/p&gt;

&lt;p&gt;If you're paying off student loans, run the numbers on extra payments. The savings might surprise you.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>productivity</category>
      <category>finance</category>
    </item>
    <item>
      <title>How I Built a Privacy-Focused Loan Calculator with Pure JavaScript and Chart.js</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Mon, 02 Nov 2026 22:32:45 +0000</pubDate>
      <link>https://dev.to/huali/how-i-built-a-privacy-focused-loan-calculator-with-pure-javascript-and-chartjs-kb3</link>
      <guid>https://dev.to/huali/how-i-built-a-privacy-focused-loan-calculator-with-pure-javascript-and-chartjs-kb3</guid>
      <description>&lt;p&gt;Have you ever used an online calculator, only to wonder: &lt;em&gt;Where is my financial data going?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Most loan calculators today require you to upload your data to a server to compute the results. Some even ask for an email before showing the numbers. As a developer, I found this frustrating. &lt;/p&gt;

&lt;p&gt;So, I decided to build my own. Here is how I built a completely serverless, 100% client-side Loan Calculator.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Tech Stack (Keep it Simple)
&lt;/h3&gt;

&lt;p&gt;To ensure maximum speed and zero server costs, I stuck to the basics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;HTML/CSS/JS&lt;/strong&gt;: No heavy frameworks. Just a single HTML file.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Chart.js&lt;/strong&gt;: To provide a visual breakdown of Principal vs. Interest.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Client-Side Logic&lt;/strong&gt;: The amortization schedule is calculated entirely in the user's browser.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Why Privacy Matters in Finance
&lt;/h3&gt;

&lt;p&gt;When a user inputs their loan amount and interest rate, that data is highly sensitive. By keeping the calculations 100% client-side, the data never leaves their device. There is no backend database, no logs, and no tracking. &lt;/p&gt;

&lt;p&gt;This "privacy-first" approach is not just a feature; it's a selling point. Users trust tools that respect their data.&lt;/p&gt;

&lt;h3&gt;
  
  
  Visualizing the Numbers with Chart.js
&lt;/h3&gt;

&lt;p&gt;Numbers in a table can be boring. To make the tool more intuitive, I integrated &lt;strong&gt;Chart.js&lt;/strong&gt;. Whenever the user changes the loan amount or term, a dynamic doughnut chart updates instantly, showing exactly how much money goes toward the principal and how much goes to the bank as interest. &lt;/p&gt;

&lt;p&gt;Here is a snippet of the calculation logic:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;monthlyRate&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;annualRate&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;factor&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;pow&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;monthlyRate&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;months&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;monthlyPayment&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;principal&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;monthlyRate&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;factor&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;factor&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  See it in Action
&lt;/h3&gt;

&lt;p&gt;I recently built a specific page for a $50,000 loan calculator. You can test the live demo here:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://app.lihayo.com/50000-loan-calculator/" rel="noopener noreferrer"&gt;https://app.lihayo.com/50000-loan-calculator/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Building tools like this has taught me that the best user experience is often the simplest one. Keep it fast, keep it private, and let the client's browser do the work.&lt;/p&gt;

&lt;p&gt;Happy coding!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>finance</category>
      <category>showdev</category>
    </item>
    <item>
      <title>How I Built a 100% Client-Side Date Calculator with Vanilla JS</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Mon, 02 Nov 2026 02:20:34 +0000</pubDate>
      <link>https://dev.to/huali/how-i-built-a-100-client-side-date-calculator-with-vanilla-js-1fl0</link>
      <guid>https://dev.to/huali/how-i-built-a-100-client-side-date-calculator-with-vanilla-js-1fl0</guid>
      <description>&lt;p&gt;Hey Devs! 👋&lt;/p&gt;

&lt;p&gt;I recently built a simple Date Calculator as a side project. I wanted something completely free, requiring no sign-up, and running 100% client-side so no user data ever hits a server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tech Stack:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pure Vanilla HTML/CSS/JS (No React, no build tools)&lt;/li&gt;
&lt;li&gt;Browser's native &lt;code&gt;Date&lt;/code&gt; object for leap-year accurate math&lt;/li&gt;
&lt;li&gt;Hosted on Cloudflare Pages&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most challenging part was dealing with time zones and making sure the difference between two dates was absolute. Using &lt;code&gt;Date.UTC()&lt;/code&gt; solved this perfectly.&lt;/p&gt;

&lt;p&gt;If you want to check it out, you can try it here: &lt;a href="https://app.lihayo.com/date-calculator/" rel="noopener noreferrer"&gt;https://app.lihayo.com/date-calculator/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let me know what you think! Feedback is always welcome. 🚀&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>showdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Why I love building 100% client-side web tools (and how I do it)</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Wed, 28 Oct 2026 22:14:58 +0000</pubDate>
      <link>https://dev.to/huali/why-i-love-building-100-client-side-web-tools-and-how-i-do-it-3hp5</link>
      <guid>https://dev.to/huali/why-i-love-building-100-client-side-web-tools-and-how-i-do-it-3hp5</guid>
      <description>&lt;p&gt;I'm a solo indie developer based in China. Over the past year I've built more than 20 small web tools, and almost all of them share one design decision: no backend at all.&lt;/p&gt;

&lt;p&gt;Here's why I keep coming back to it.&lt;/p&gt;

&lt;p&gt;No server means no data risk. When a tool runs entirely in the browser, the user's input never leaves their device. There's no database to leak, no logs to inspect, no "we may share data with partners" paragraph to write. Privacy stops being a policy and becomes an architecture. For things like a BMI calculator or a password generator, that's the right default.&lt;/p&gt;

&lt;p&gt;Instant load. A single HTML file with inline CSS and JS is a few kilobytes. It renders before a typical React app has finished downloading its framework. Fast tools feel trustworthy.&lt;/p&gt;

&lt;p&gt;Near-zero cost. Static files on Cloudflare Pages cost me basically nothing. No servers to patch, no uptime alerts at 3 a.m., no scaling bill when a post goes viral.&lt;/p&gt;

&lt;p&gt;How I actually build them: plain HTML, CSS, and vanilla JavaScript. No build step, no framework. I deploy to Cloudflare Pages with a git push. I use AI as a pair programmer — mostly for scaffolding layouts and catching edge cases — but I keep the logic simple enough to read in one sitting.&lt;/p&gt;

&lt;p&gt;That stack is what powers Lihayo Tools, a growing set of 20+ free utilities including BMI and TDEE calculators. Everything runs locally, no signup, no tracking.&lt;/p&gt;

&lt;p&gt;If you've been thinking about shipping small tools, start with a single HTML file. It's still the most underrated stack on the web.&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>webdev</category>
      <category>javascript</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Why I built a 100% client-side BMI calculator that respects your privacy</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Sat, 24 Oct 2026 12:28:51 +0000</pubDate>
      <link>https://dev.to/huali/why-i-built-a-100-client-side-bmi-calculator-that-respects-your-privacy-4ikj</link>
      <guid>https://dev.to/huali/why-i-built-a-100-client-side-bmi-calculator-that-respects-your-privacy-4ikj</guid>
      <description>&lt;p&gt;I'm a solo indie dev from China, and I got tired of BMI calculators that force you to sign up, drown you in ads, ignore imperial units, and just hand you a cold number with no context.&lt;/p&gt;

&lt;p&gt;So I built my own. It's completely free, no signup, no ads, and 100% client-side — everything runs locally in your browser, and no data ever leaves your device.&lt;/p&gt;

&lt;p&gt;It supports metric and imperial switching without reloading, live BMI updates, and proper input validation. The part I'm most happy with is a horizontal gradient band from blue to green to yellow to red, with a dynamic marker showing exactly where your BMI sits. You don't just see "24.1" — you see your position in the range.&lt;/p&gt;

&lt;p&gt;It's all vanilla HTML, CSS, and JavaScript. No frameworks, no backend, no tracking. I'm building this in public and would love honest feedback — especially from webdev folks who care about privacy-first frontend tools.&lt;/p&gt;

&lt;p&gt;If it's useful, I've also built 20+ other no-signup, pure frontend tools on the same site.&lt;/p&gt;

&lt;p&gt;Try the BMI Pro tool here: &lt;a href="https://app.lihayo.com/bmi-pro/" rel="noopener noreferrer"&gt;https://app.lihayo.com/bmi-pro/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>showdev</category>
      <category>privacy</category>
    </item>
    <item>
      <title>How I Built 17 Free Web Utilities Using AI and Cloudflare (Zero Code)</title>
      <dc:creator>huali</dc:creator>
      <pubDate>Thu, 22 Oct 2026 06:29:42 +0000</pubDate>
      <link>https://dev.to/huali/how-i-built-17-free-web-utilities-using-ai-and-cloudflare-zero-code-1abi</link>
      <guid>https://dev.to/huali/how-i-built-17-free-web-utilities-using-ai-and-cloudflare-zero-code-1abi</guid>
      <description>&lt;p&gt;Hi everyone! I'm a beginner with zero coding background, but I've always wanted to build useful tools for the web. Recently, I discovered a workflow that allowed me to build and deploy 17 pure HTML tools in just a few weeks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here is my stack:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;AI for Code&lt;/strong&gt;: I use DeepSeek and Claude to generate pure HTML/CSS/JS.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hosting&lt;/strong&gt;: I upload the files to Cloudflare Workers (completely free).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Domain&lt;/strong&gt;: I bought my own domain and bind subdomains to each tool.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;The hardest part:&lt;/strong&gt;&lt;br&gt;
The biggest challenge isn't writing the code; it's getting organic traffic. I've submitted my sites to Bing and added internal links, but SEO takes time. I've also integrated Adsterra to monetize the traffic.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My Tools:&lt;/strong&gt;&lt;br&gt;
I built everything from a &lt;strong&gt;Labrador Age Calculator&lt;/strong&gt; to an &lt;strong&gt;Image Color Palette Extractor&lt;/strong&gt; that exports CSS variables.&lt;/p&gt;

&lt;p&gt;If you want to check them out, here is my main hub: &lt;strong&gt;&lt;a href="https://app.lihayo.com" rel="noopener noreferrer"&gt;https://app.lihayo.com&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I would love to hear your feedback on the UI or any tips on getting the first 100 visitors! Thanks!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>beginners</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
