DEV Community

Cover image for I Built 140+ Free Online Tools in 11 Languages — Here's What I Learned
anss ajlony
anss ajlony

Posted on

I Built 140+ Free Online Tools in 11 Languages — Here's What I Learned

The Problem That Started It All

Like many developers, I had this annoying habit: I'd open 8-10 different websites just to do simple tasks. One site for currency conversion, another for QR code generation, a third for PDF merging, a fourth for password generation... You get the picture.

Each site bombarded me with ads, popups, and "Sign up for premium!" banners. I was wasting more time closing popups than actually using the tools.

So I asked myself: Why isn't there one clean, fast, free place that has everything?

That question turned into an 18-month obsession. The result is Get-Tools.com — a collection of 140+ free online tools, available in 11 languages, with zero signup, zero limits, and zero BS.

Here's what I learned along the way.


Lesson 1: Building 140+ Tools Is Not About Quantity — It's About Categorization

When I started, I had a chaotic Google Doc with "tool ideas" — 300+ random entries. Calculators, generators, converters, games... it was overwhelming.

The breakthrough came when I stopped thinking like a developer and started thinking like a user.

I grouped tools into mental categories that match real-life moments:

  • Money & Business — when you're paying bills or sending money abroad
  • Tech & AI — when you're coding or experimenting with AI
  • Daily Life — when you're pregnant, praying, or tracking health
  • Content & Creative — when you're designing or writing

This categorization changed everything. Users now find tools faster, bounce rates dropped 40%, and average session time tripled.

Takeaway: If your product has many features, organize them by user intent, not by technical similarity.


Lesson 2: i18n (Internationalization) Is Brutal — But Worth It

I support 11 languages: Arabic, English, French, German, Turkish, Russian, Dutch, Italian, Polish, Brazilian Portuguese, and Spanish.

Why so many? Because I wanted my mom (Arabic speaker) and a developer in Berlin to have the exact same experience.

Here's what I learned the hard way:

URL Structure Matters More Than You Think

I went with subfolders: get-tools.com/de/tools/qr-gen instead of de.get-tools.com or ?lang=de.

Why? Subfolders inherit domain authority. Subdomains start from zero. URL parameters are SEO suicide.

hreflang Tags Are Non-Negotiable

<link rel="alternate" hreflang="ar" href="https://get-tools.com/ar/..." />
<link rel="alternate" hreflang="en" href="https://get-tools.com/en/..." />
<link rel="alternate" hreflang="de" href="https://get-tools.com/de/..." />
<link rel="alternate" hreflang="x-default" href="https://get-tools.com/en/..." />
Enter fullscreen mode Exit fullscreen mode

Without these, Google doesn't know which version to show to which user. I learned this after 3 months of wondering why my German pages weren't ranking in Germany.

RTL (Right-to-Left) Is Not Just direction: rtl

Arabic isn't just "English written backwards." It affects:

  • Icon positions
  • Form layouts
  • Margin/padding directions (use margin-inline-start instead of margin-left)
  • Animation directions
  • Even number formatting

Modern CSS logical properties saved my life:

/* Bad — breaks in RTL */
.button { margin-left: 10px; }

/* Good — works in both LTR and RTL */
.button { margin-inline-start: 10px; }
Enter fullscreen mode Exit fullscreen mode

Lesson 3: Performance Matters More Than Features

When I shipped my first 50 tools, the homepage took 8 seconds to load. Users left before seeing anything.

Here's what fixed it:

Lazy Load Everything Below the Fold

Don't load all tool icons at once. Use the native loading="lazy" attribute:

<img src="tool-icon.svg" loading="lazy" alt="QR Generator" />
Enter fullscreen mode Exit fullscreen mode

Tool Code Should Be Per-Page, Not Global

Each tool has its own JavaScript bundle. The QR generator code never loads on the BMI calculator page.

CDN Is Your Best Friend

Static assets (CSS, JS, images) served via CDN. Server-side rendering for SEO. Initial HTML under 50KB.

Result: Homepage now loads in 1.2 seconds. Bounce rate dropped 60%.


Lesson 4: Privacy Is a Feature, Not an Afterthought

I made a controversial decision early on: no user accounts, no data tracking, no ads selling user data.

Tools that handle sensitive data (PDF merger, image editor, password generator) process everything client-side in the browser. Files never touch my server.

Example — the PDF merger uses pdf-lib directly in the browser:

import { PDFDocument } from 'pdf-lib';

async function mergePDFs(files) {
  const merged = await PDFDocument.create();

  for (const file of files) {
    const bytes = await file.arrayBuffer();
    const pdf = await PDFDocument.load(bytes);
    const pages = await merged.copyPages(pdf, pdf.getPageIndices());
    pages.forEach(page => merged.addPage(page));
  }

  return await merged.save();
}
Enter fullscreen mode Exit fullscreen mode

Users love this. My most common feedback email is: "Thank you for not requiring me to upload my files to your server."


Lesson 5: Niche Tools Beat Generic Tools

My most popular tools aren't the obvious ones (calculator, QR code).

They're the specific, hyper-useful ones:

  • PayPal Fee Calculator — exact fees for international transfers
  • Western Union Fee Calculator — same idea
  • Islamic Inheritance Calculator — solves a complex religious calculation
  • Contraction Timer — for women in labor
  • Backgammon 31 — a regional variant most sites don't have

The lesson? Don't compete on "Calculator." Compete on "Calculator for [specific niche use case]."

This applies to any product. Specificity wins.


Lesson 6: Games Increase Retention Massively

I almost didn't build the games section. "It's a tools website, not a game site."

Best decision I almost didn't make.

Adding 16+ games (Tic Tac Toe, Billiards, Memory Challenge, IQ Test, Personality Test, Backgammon) increased:

  • Average session time: +180%
  • Pages per session: +220%
  • Return visitor rate: +95%

Users come for the QR generator, stay for the Tic Tac Toe.

The principle: If your product is utility-focused, add a touch of fun. Users are humans, not robots.


The Tech Stack (For the Curious)

  • Backend: PHP (Laravel) — yes, really, and it's fast
  • Frontend: Vanilla JS where possible, Vue components for complex tools
  • Database: MySQL for content, Redis for caching
  • Heavy lifting in browser: WebAssembly modules for image compression, PDF processing
  • AI features: API calls with aggressive caching
  • Hosting: VPS with Cloudflare in front
  • Analytics: Google Analytics 4 (only thing tracked)

What's Next?

I'm working on:

  1. Browser extensions — quick access to top 10 tools
  2. API access — let developers use my tools programmatically
  3. More languages — Japanese, Korean, Hindi requested most
  4. Offline mode — PWA with service workers

If You're Building Something Similar

A few honest pieces of advice:

Start narrow, expand later. I started with 5 tools. Adding the next 135 was easier because the foundation was solid.

SEO is a 6-month investment. Don't expect traffic in week one. Write good code, write good content, wait.

Listen to weird feedback. A user once asked for an "ovulation calculator." I almost dismissed it. Now it's one of my top 10 tools.

Free + Useful + Fast = Word of Mouth. I've spent $0 on advertising. All growth is organic.


Try It Yourself

If you want to check out what I built, head to Get-Tools.com. No signup required, nothing to install. Just tools.

I'd love your feedback — especially the brutal kind. What's missing? What's broken? What should I build next?

Drop a comment below or open an issue on the contact form.


Tags: #webdev #showdev #javascript #beginners #productivity

This article is part of my journey building Get-Tools.com solo. If you enjoyed it, follow me here on Dev.to for more lessons learned in public.

Top comments (1)

Collapse
 
ziggylabs profile image
Ziggy

I love it! Just one question: What one was the hardest to build?