Turkish makemore — a name generator in your browser

loading model…in-browser
press generate to sample from the model…

The model above is real. It’s a tiny character-level MLP — Karpathy’s makemore part 2, a Bengio-2003 style neural n-gram — that I trained from scratch on ~560 Turkish first names. It conditions on the previous three characters, embeds them, runs one tanh hidden layer, and samples the next character until it decides the name is done.

The whole thing is 4,234 parameters, which is small enough to ship as a 90 KB JSON file and run the forward pass in a few lines of plain JavaScript — no server, no API, no inference cost. Press generate and the sampling loop runs on your machine.

It learned Turkish name shape one character at a time: vowel harmony, endings like -an and -el, and the ç ğ ı ö ş ü letters. With so few training names it’s a small, slightly noisy model — which is the point. It’s transparent: the repo has the training code, the trained weights, and the browser demo, and this site just loads that artifact.