DEV Community

monster0915
monster0915

Posted on

I built a dragon name generator in one HTML file - the trick is hiding meaning in the roots

Most name generators spit out syllable soup. When I built
dragonnameforge.com (a free dragon name generator, single HTML file,
no backend), I wanted every name to carry its own lore. So the whole
tool runs on a root system: ign- = fire, glac- = ice, ur- = origin,
-rax = wing, -thys = guardian. A generated name like "Drignarax"
isn't random - the page can tell you it means "the fire-winged", plus
a one-line legend: born beneath a bleeding comet, hoarding melted
crowns in a caldera.

Tech side is deliberately boring: one index.html, inline CSS/JS,
around 120 root combinations per lineage, mobile-first dark UI, zero
cookies. Deployed as a static asset Worker on Cloudflare with a
custom domain.

The SEO side was the real lesson: title, description and H1 written
around one low-difficulty keyword; 150 words of natural prose that
uses the keyword family without stuffing; and a meaning card per
result so visitors stay and click instead of bouncing.

If you're building tiny tools: pick one keyword you can actually win,
make the page answer it completely, and let the roots do the
storytelling.

Live here: https://dragonnameforge.com/ - feedback welcome, especially
on the lore lines.

Top comments (0)