DEV Community

Ali Riaz
Ali Riaz

Posted on • Originally published at toolsparkr.com

I Built 35+ Free Developer Tools as a Solo Dev — Here's Everything I Learned

Six months ago, I had zero users, zero tools, and zero budget. Today, ToolSparkr has 35+ free developer tools, 33 blog posts, 50 programmatic SEO pages, and perfect 100/100 PageSpeed scores — all built solo, all completely free.

This is the full story of how I built it, what I got wrong, what I got right, and everything I learned along the way.


Why I Built This

Every developer has been there. You need to quickly encode a string to Base64. You Google it, click the first result, and you're hit with:

  • A cookie consent banner that takes up half the screen
  • An ad that autoplays video with sound
  • A "Sign up to use this tool for free" modal
  • A spinner that runs JavaScript for 4 seconds to do something that should take 4 milliseconds

I got tired of it. Not just mildly annoyed — actually tired. I started keeping a mental list of every tool I had to use where I thought "this is worse than it needs to be." That list got long fast.

The idea behind ToolSparkr was simple: build clean, fast, free developer tools that just work. No signup. No ads in your face. No dark patterns. No sending your data to some third-party API when everything can run client-side in the browser anyway.

I wanted tools that I would actually use. Tools that open instantly, do the thing, and get out of your way.


The Tech Stack

Before I list the tools, I want to be honest about the tech stack because I know the first question people ask is "why not Next.js?" or "why PHP in 2025?"

The stack:

  • PHP 8.1+
  • Custom MVC framework (called "Altum" — open source)
  • MySQL 8
  • Apache with mod_rewrite
  • Cloudflare CDN (free tier)
  • DigitalOcean droplet ($6/month)

No React. No Vue. No build pipeline. No node_modules folder that's heavier than a black hole.

Here's why PHP was the right call for this project:

Speed of development. I can spin up a new tool page in under an hour. There's no compilation step, no bundler configuration, no TypeScript errors to fight. Write PHP, refresh the browser, done.

Zero build step. I deploy by pushing files to the server. That's it. No CI/CD pipeline needed (though I have one now). No failed GitHub Actions builds at 2am.

Shared hosting friendly. If I ever want to hand this off, move it, or run a cheaper version of it — PHP runs on literally every web host on earth.

It's fast when done right. This is the one people argue with me about. PHP is slow, they say. No — poorly written PHP with no caching is slow. With OPcache, APCu, output caching, Brotli compression, and Cloudflare in front of it, my PHP app scores 100/100 on PageSpeed consistently.

The custom MVC framework handles routing, templating, database access, and meta tags. It's lightweight — maybe 2,000 lines of core code. No autoloading magic you can't debug at 11pm.


All 35 Tools

Here's every tool currently on ToolSparkr, grouped by category. All of them are free, all require zero signup:

Converters

Generators

Formatters & Validators

Hashing & Security

Text Tools

Other Tools

That's 35 tools across 6 categories. Every single one is free, no account required, and most run entirely in the browser with no server round-trip needed.


The Performance Obsession

I'll be honest — I probably spent too much time on performance before I had enough content. But I also can't bring myself to apologize for it because the results are real.

ToolSparkr scores 100/100/100/100 on Google PageSpeed Insights (Performance, Accessibility, Best Practices, SEO) on both mobile and desktop for the homepage and tool pages.

Here's what it took to get there:

OPcache — PHP's built-in opcode cache. Configured with 256MB memory, 32,531 max files, and validate_timestamps=0 in production (so it never re-checks file mtimes). Cold page generation went from ~80ms to ~8ms.

APCu object caching — I wrote a tiny apcu_wrap() helper that caches DB query results in memory. Blog post queries, tool listings, popular tools sidebar — all cached for 300 seconds. Falls back to direct DB if APCu isn't available.

Full-page output cache — For GET requests with no session cookie, the server writes the rendered HTML to a file in uploads/cache/. The next request reads that file and bypasses PHP entirely. TTL is 3600 seconds. Tools pages, blog posts, homepage — all cached.

Brotli + GZIP compression — Both enabled via Apache mod_brotli and mod_deflate. Brotli on modern browsers gets about 15-20% better compression than gzip on text assets.

Critical CSS inlining — The above-the-fold CSS is inlined in <head>. The full stylesheet loads asynchronously with media="print" switched to all on load. This eliminates the render-blocking CSS that tanks LCP scores.

Immutable cache headers — Static assets (CSS, JS, fonts, images) are served with Cache-Control: public, max-age=31536000, immutable. File hashes in query strings (?v=a3f4b2c1) bust the cache on deploy. No stale assets, no unnecessary revalidation requests.

Content-Delivery via Cloudflare — Free tier gives you a global CDN, DDoS protection, and HTTP/3 support. Combined with the server-side caching, most tool pages are served from Cloudflare's edge cache with sub-50ms TTFB globally.

Interaction-delayed analytics — Google Analytics 4 doesn't fire until the user interacts with the page (first scroll, first click). This keeps it off the critical path for LCP and FID.

The result: pages that feel instant. Not "fast for a PHP site" — actually fast.


The SEO Strategy That Actually Works

I'm not an SEO expert. I've read a lot, experimented a lot, and here's what I've actually seen move the needle:

Blog Content (33 posts and counting)

I write 2-3 blog posts per week. Every post is optimized for GEO — Generative Engine Optimization — which means writing content that AI search engines (ChatGPT, Perplexity, Google AI Overviews) can extract answers from.

Practically, this means:

  • A clear TL;DR summary at the top of every post
  • A "Key Takeaways" section with bullet points
  • FAQ sections with direct, factual answers
  • Structured data (FAQPage JSON-LD) generated automatically from FAQ content
  • article:published_time and article:modified_time OG tags on every post

50 Programmatic SEO Pages

These are the pages I'm most proud of. For high-traffic tools, I created variation pages targeting specific long-tail queries:

  • /url-encoder/javascript — how to URL encode in JavaScript
  • /base64-encoder/python — Base64 encoding in Python
  • /password-generator/16-characters — generate 16-character passwords
  • /md5-generator/security-risks — why MD5 is insecure

Each page has unique content written for that specific variation. Not spun content — actually useful pages. The programmatic pages are stored in a DB table, routed dynamically through the Tools controller, and included in the XML sitemap automatically.

Schema Markup Everywhere

Every tool page has:

  • BreadcrumbList JSON-LD
  • WebPage or SoftwareApplication JSON-LD
  • Open Graph tags with per-tool OG images (1200x630px, generated with GD)

Every blog post has:

  • Article JSON-LD
  • FAQPage JSON-LD (auto-generated from FAQ sections)
  • BreadcrumbList JSON-LD

OG Images for All 99 Pages

I wrote a PHP script using GD + FreeType to generate branded OG images for every tool (99 images total). Dark navy background, Inter font, category-coloured accent bars, "Free Online Tool" tagline. They took a day to generate properly but now every shared link looks polished.

XML Sitemaps

Four separate sitemaps: tools, blog, static pages, programmatic pages — all consolidated under a sitemap index. Submitted to Google Search Console. 10 URLs immediately requested for indexing.


The $0 Budget Breakdown

People assume building something like this costs a lot. Here's the actual monthly cost:

Item Cost
Domain (toolsparkr.com, Spaceship) ~$0.83/month ($10/year)
DigitalOcean droplet (1GB RAM, 25GB SSD, SGP1) $6/month
Cloudflare CDN Free
Let's Encrypt SSL Free
CookieYes GDPR consent (IAB TCF v2.3) Free tier
Google Analytics 4 Free
Custom MVC framework (Altum) Free / open source
All 35 tools Built myself

Total: ~$6.83/month

The DigitalOcean droplet was free for the first 2 months with their new account credit. So the real cost for the first 2 months was just the domain — about $10 total to launch.

No AWS. No Vercel. No Netlify. No managed database service. A $6 VPS running Apache + PHP + MySQL handles everything comfortably, with headroom to spare.


What I'd Do Differently

With the benefit of hindsight, here are the four things I'd change:

1. Start with fewer tools, go deeper on each.
I launched with 15 tools in the first month. In hindsight, I should have launched with 8 and written 3 blog posts about each one. Depth beats breadth early on, both for SEO and for user trust.

2. Write blog posts from day one.
I waited until I had "enough tools" before starting the blog. That was a mistake — blog content takes months to rank, and I lost 2 months of compounding. Start the blog the day you start the project.

3. Don't chase PageSpeed 100 before you have content.
I spent a week getting from 98 to 100. That week could have produced 4 blog posts. Perfect performance matters eventually, but not before you have anything to rank.

4. Get on directories earlier.
Product Hunt, Hacker News, developer directories, tool aggregators — I submitted too late. These give you immediate backlinks and traffic spikes that help GSC understand your site is real. Do it on launch week, not month three.


What's Next

ToolSparkr is live and growing. Here's what's on the roadmap:

  • More tools — targeting 50+ by end of Q2. Diff checker, JWT decoder, SQL formatter, CSV to JSON converter, YAML validator, favicon generator.
  • Embeddable widgets — I already built this for 3 tools (password generator, color converter, QR code reader). Widget URL /{tool}/widget?theme=light|dark, iframe embed code auto-generated. Expanding to 10 more tools.
  • Monetization — Applying to Google AdSense. Non-intrusive banner placement only. I'm committed to keeping the tools usable even with ads.
  • Product Hunt launch — Planning a proper PH launch with a video demo, assets, and scheduled hunter support.
  • Weekly blog content — 2 posts minimum per week. Topics queued up through Q3.
  • More programmatic SEO pages — Currently 50. Target is 200 by end of year, covering every major programming language and framework for every applicable tool.

Try It

If you've made it this far, thank you for reading. This was a solo project built out of genuine frustration with the current state of developer tools online.

If you're a developer, designer, or anyone who works with code — try ToolSparkr. It's free, no signup required, and everything that can run in your browser does run in your browser.

toolsparkr.com

If you find a tool useful, share it with your team. If something's broken or you want a tool that doesn't exist yet, open an issue on GitHub or drop a comment below. I read everything.


Built solo. No VC funding. No team. Just a developer who got tired of bad tools.

Top comments (1)

Collapse
 
mihirkanzariya profile image
Mihir kanzariya

35 tools solo is wild. The custom MVC framework choice is interesting too, most people would just reach for Next.js or whatever's popular and call it a day.

Curious about the SEO strategy with 50 programmatic pages. Did you template those or write each one manually? Programmatic SEO for dev tools is something I keep meaning to try but never get around to.

The 100/100 PageSpeed with PHP and Cloudflare is legit though. People underestimate how fast a simple stack can be when you're not loading 2MB of JS frameworks.