teka teki silang
A daily Indonesian crossword that publishes itself: a generator that verifies every grid is solvable, LLM-drafted clues behind a review step, tests and CI, and a new edition every night. No accounts, no ads, and your progress stays on your device.
Play teka teki silang
- URL
- tts.ideathatworks.de
- Stack
- TypeScript grid generator · React PWA · Python clue tooling
- Generation
- Searches for a symmetric block pattern, then fills it by backtracking, so every published edition is verifiably solvable.
- Clues
- Drafted by an LLM with structured outputs and stored as drafts with their provenance. Automated validation checks them, and only the review step promotes a draft into the approved set.
- Vocabulary
- About 2,800 words, extended in batches from LLM drafts and an open KBBI dataset.
- Publishing
- A scheduled GitHub Actions job generates tomorrow’s edition at 00:10 UTC, and date-gating keeps it hidden until its day. Deploys run over SSH after lint, tests and build pass.
- Quality
- Over a hundred tests across the grid engine and the Python pipeline, with ruff and CI on every push.
- Status
- Live. A new edition is generated and published automatically every day.
- Started
- 20 September 2026
- Last update
- 3 October 2026
A new edition every day
Every day a new edition is generated and published automatically. The vocabulary keeps growing in batches of about fifty words, each drafted by a model and promoted through a review step.
It publishes itself
A scheduled job generates and commits tomorrow’s edition each night, and date-gating keeps early ones hidden until their day. No manual step is left in the loop.
Harder at the weekend
Sedang from Monday to Friday, Sulit on Saturday, Sangat Sulit on Sunday. The tiers waited until the vocabulary was deep enough to make them feel different.
Check and hint, with limits
Periksa checks a word or the whole grid and marks wrong letters with a slash, not a colour. Bantuan reveals one letter at a time, capped at three per edition.
Subdomain live
Listed on ideathatworks.de the day it started: a placeholder page, a deploy workflow, then the play screen.