DEV Community

Chison She
Chison She

Posted on

I Got Tired of Hunting for Free Online Tools. So I Built 1000+ of Them — All Client-Side, Zero Backend.

I Got Tired of Hunting for Free Online Tools. So I Built 1000+ of Them — All Client-Side, Zero Backend.

Every time I needed a simple tool — format JSON, resize an image, generate a QR code — I'd open Google, search for a "free online tool," and land on some sketchy site with 47 pop-up ads, a 10MB file size limit, and a $9.99/month "premium" upgrade staring me in the face.

Sound familiar?

I knew there had to be a better way. So I built one. And then another. And... well, 1000+ tools later (1052 to be exact, across 2130+ bilingual pages), here we are.

What started as a weekend project turned into an obsession: a completely free, ad-light, privacy-first toolbox that does everything in your browser. No uploads. No servers. No accounts. No BS.


🚀 The Self-Imposed Constraints

The most interesting part? I gave myself some pretty extreme constraints:

Constraint Why
100% static HTML/JS No server, no database, no build step
$0 hosting GitHub Pages — literally free forever
Works offline Everything runs client-side, so once loaded, it just works
Bilingual Every tool has an English + Chinese version
No frameworks Vanilla HTML, CSS, and JavaScript — no React, no Vue, no build tools
SEO-first Every page has Schema.org structured data, OG tags, and sitemap integration

Why these constraints? Because I wanted to prove that you can build something genuinely useful without any recurring costs, complex infrastructure, or venture capital. Just pure engineering.


🔧 The Architecture (If You Can Call It That)

The whole thing is beautifully simple:

webtools-cn.github.io/tools-site/
├── index.html          ← Homepage with category filtering
├── en/index.html       ← English homepage
├── sitemap.xml         ← Auto-generated, ~2130 URLs
├── llms.txt            ← AI search optimization
├── [tool-name]/        ← Each tool is a standalone folder
│   └── index.html      ← Self-contained HTML + JS + CSS
└── en/[tool-name]/     ← English version of each tool
    └── index.html
Enter fullscreen mode Exit fullscreen mode

Each tool is a completely standalone HTML file. No build process, no framework, no dependencies (except the occasional CDN-loaded library like html2canvas or jsPDF).

The hard part wasn't building individual tools — it was keeping 900+ pages maintainable:

  • 29 category tags for cross-filtering on the homepage
  • 7 types of Schema.org structured data per page (FAQPage, SoftwareApplication, HowTo, etc.)
  • Cross-tool recommendations at the bottom of every page
  • Auto-generated sitemap that gets rebuilt with every batch of new tools

🛠️ What's Inside? (The Tool Categories)

After 900+ tools, patterns emerged. Here's what people actually need:

Category Example Tools Count
🔤 Text & Strings Case converter, text diff, regex tester, slug generator ~120+
🖼️ Image & Design Image resizer, SVG editor, color picker, QR generator ~100+
🔐 Security & Hash MD5/SHA generator, password checker, encryption tools ~60+
🌐 Web & URL URL encoder/decoder, redirect checker, HTTP headers ~80+
💻 Code & Dev JSON formatter, HTML prettifier, CSS minifier, SQL formatter ~90+
📊 Data & Math CSV viewer, unit converter, calculator, base converter ~100+
📝 PDF & Office PDF merger, page extractor, PDF-to-Excel, password protect ~40+
🎨 Design & CSS Gradient generator, shadow builder, animation CSS generator ~70+
🧪 Random & Fun Random number generator, UUID generator, color palette ~50+
💰 Business & Finance Invoice generator, crypto calculator, loan calculator, budget planner ~60+
And more... Date calculator, time zone converter, cron expression builder ~200+

💡 The Biggest Engineering Challenges

1. Keeping 900+ Pages Consistent

When you have 900+ pages, changing the footer means changing 900+ files. I built a template system that generates individual HTML files from a shared structure. Every new tool automatically inherits:

  • The same navigation bar
  • Standardized meta tags
  • Proper OG tags for social sharing
  • Schema.org structured data
  • GA4 event tracking
  • Feedback button (GitHub Issues)

2. Category Tag Normalization

Early on, I had 50+ poorly-defined category tags. I normalized them down to 29 short codes (e.g., text, image, dev, security). Now the homepage search/filter just works.

3. Bilingual Content Management

Each tool exists in both English and Chinese. The challenge was keeping them in sync. The solution: generating both versions from the same data structure, with Chinese content added manually (translation is still by hand for quality).

4. Schema.org Structured Data

Every tool page has comprehensive Schema.org markup:

  • SoftwareApplication (for search engines to recognize it as a tool)
  • WebApplication + Offer (confirming it's free)
  • FAQPage (3-5 common questions per tool — great for AI search)
  • HowTo (step-by-step usage instructions)

This turned out to be one of the best investments — structured data helps in both traditional SEO and AI-generated search results.


📈 Growth Strategy (So Far)

Traffic is currently... basically zero. 😅 Here's the plan:

Phase Tactic Status
1 SEO fundamentals — sitemap, Schema.org, GSC, IndexNow ✅ Done
2 GEO (Generative Engine Optimization) — FAQ Schema, llms.txt, AI-friendly content ✅ Done
3 Reddit launch (July 22) — r/SideProject story post 🔜 Next week
4 Dev.to article — this post! 🔜 Publishing soon
5 Hacker News — community participation 🔜 In progress
6 Chrome Web Store — 4 extensions ready to publish 🔜 Soon
7 Content marketing — technical blog posts, tutorials 📅 July/Aug

The biggest lesson so far? Building the product was 20% of the work. Getting it found is the other 80%.


🎯 What I Learned That Might Help You

1. Client-side tools are genuinely underrated

Most people assume you need a server for anything useful. Not true. Modern browsers can do JSON parsing, image processing, PDF manipulation, QR generation, text analysis, and even SVG rendering — all in JavaScript.

The only limitations are:

  • Large file processing (browsers have memory limits)
  • Server-side PDF manipulation (merging pages needs a backend)
  • Anything requiring file storage

For everything else, client-side is faster, cheaper, and more private.

2. SEO for tool websites is different from content sites

Tools pages don't get "read" — they get "used." The key metrics are:

  • Schema markup coverage — every page needs SoftwareApplication + FAQPage + HowTo
  • Page speed — tools need to load fast (<2s) since users want quick results
  • Freshness signals — dateModified on every page matters for Google
  • AI citation readiness — FAQ schema and llms.txt are becoming critical for AI search

3. GitHub Pages is surprisingly capable

I've hit exactly zero limits with GitHub Pages for this kind of project. 1000+ pages, 50MB+ total, zero performance issues. The only drawback: no server-side processing (obviously), and China access is spotty (GFW).

4. Don't wait for "perfect" to launch

I started with 10 tools. Then 50. Then 200. Now 1000+. Each batch taught me something that made the next batch better. The first tools were ugly, slow, and had zero schema markup. Now every tool ships with full SEO optimization.


🔗 Where to Find It

The site is live at: webtools-cn.github.io/tools-site/

The code is on GitHub: github.com/webtools-cn/tools-site

(Yep, it's all open source — PRs welcome! 🤝)


💬 Let's Discuss

I'd love to hear from other folks who've built similar projects:

  • What's your experience with client-side-only tools?
  • Any tips for getting the first 1000 daily visitors?
  • What tools would you add to this collection?

If you find a tool useful, star the repo or share it with a friend who might need it. Every bit helps when you're starting from zero traffic! 🚀


P.S. The entire site is bilingual (English + Chinese). If you're learning Chinese or want to practice your language skills while getting work done, check out the Chinese versions!

Top comments (0)