cd /news/ai-tools/i-built-a-static-ai-tools-directory-… · home topics ai-tools article
[ARTICLE · art-47751] src=dev.to ↗ pub= topic=ai-tools verified=true sentiment=↑ positive

I built a static AI tools directory with 1,638 auto-generated pages — here's the full technical breakdown

A developer built AsmiAI, a fully static AI tools directory with 236 reviewed tools and 1,638 auto-generated comparison pages, using Node.js and Python to generate 2,373 pages from JSON data files in under two minutes. The site, hosted on Cloudflare Pages, features a free AI chat advisor powered by Groq's Llama 3.1 that can only recommend tools from the directory. The developer optimized for AI discoverability by including machine-readable files like llms.txt and a JSON API endpoint.

read1 min views1 publishedJul 4, 2026

I've been building AsmiAI (asmiai.xyz) for the past 6 months — a fully static AI tools directory with 236 reviewed tools, 1,638 side-by-side comparison pages, and a free AI chat advisor. Zero database, zero framework, free hosting.

Here's exactly how it works technically.

Everything is generated from JSON data files at build time using Node.js and Python. One ./build-asmiai.sh

command generates 2,373 pages in under 2 minutes and deploys to Cloudflare Pages.

{
  "name": "ChatGPT",
  "slug": "chatgpt",
  "category": ["ai-chatbots"],
  "pricing": "Free / $20/mo",
  "free_plan": true,
  "rating": 4.9
}

The most interesting part — 1,638 comparison pages like /compare/chatgpt-vs-claude/

are generated automatically from the tool data. Every tool is compared against every other tool in the same category.

The generator computes all valid pairs, skips reverse duplicates, and generates enriched HTML with:

A floating chat widget on every page powered by Groq (Llama 3.1). The system prompt is grounded in all 236 tools — the AI can only recommend tools that actually exist in the directory.

The tricky part: Groq free tier is 6,000 TPM. With 236 tools in the system prompt (~2,500 tokens), I only have room for 2-3 requests per minute. Solution: compact the tool context format from verbose pipe-delimited to just Name (category, free/paid) slug

.

Built for AI discoverability from the start:

llms.txt

— machine-readable site summaryllms-full.txt

— complete tool inventory/api/tools.json

robots.txt

allows

── more in #ai-tools 4 stories · sorted by recency
── more on @asmiai 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/i-built-a-static-ai-…] indexed:0 read:1min 2026-07-04 ·