Screen width limited to 980 pixels. Left and right gutters equal width.
------------
Main Content
------------
Every page on this site has a "Source" button in the upper right corner.
That button downloads a file called build-instructions.txt,
the prompt which serves as input to an LLM.
The build instructions generate a single file: index.html
that is used by the browser to render the web page.
How each type of page was created
Page Type | Number of Pages | LLM Used to Build index.html | Build Instructions
Drag-and-drop matching game | 4032 | Google Gemini | Composed iteratively, by Gemini
Language Landing Page | 63 | Anthropic Claude | Composed iteratively, by Claude
Home Page, FAQ, Video Guides, About | 4 | Google Gemini | Composed manually
Aside from the top section (Content Generation), virtually the entire
build instructions file for the games was written by Google Gemini.
The build instructions evolved gradually.
The Landing Pages have two functions: provide structured access to all of the games and
implement the offline-installable PWA architecture.
3. Human Generated Prompts
The prompts for the tradional web pages (home page, FAQ, About) were created entirely by hand.
But much of the content was created by the LLM.
For example, the answer to the FAQ question
"What are some advantages of learning a second language?"
was composed entirely by the LLM.
Also the table
of Threatened Languages was populated mostly by the LLM.
-------------
Theme & Style
-------------
Use the Tailwind 'Stone' palette. Headings should be deep red and serif; body text sans-serif. Do not display any comments.
Links: Bold font, dark blue color. Links must open in the current window.
ARCHITECTURE (critical)
Produce a single static index.html file containing all content inline. Do NOT use React, Vue, Svelte, Next.js, or any client-side rendering framework. The full page content — language grid, features, technology stack, threatened languages, use cases — must be present as HTML in the initial server response, before any JavaScript executes.
Use Tailwind via the CDN script tag for styling. Use plain vanilla JavaScript (no frameworks) only for the small interactive pieces: the hamburger menu toggle, the "More Languages" collapse/expand, and the mailing list form submission. All other content is static HTML.
The goal: a user or crawler that fetches this page with JavaScript disabled must still see the full content. Test by conceptually asking: "if I removed all the