Create word search
generate_word_searchUse this when the user wants a word search puzzle (word find, word search maker, printable word search for kids or a class) from a list of words. Accepts 5-40 words for a letter grid: right and down for easy, adding diagonals for medium, all 8 directions including backwards for hard; checks placed words for duplicate occurrences and reports words left out. Shows a playable puzzle and returns a printable PDF with an answer key. Not for crosswords (use generate_crossword) and does not find words in a grid the user already has.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Optional layout seed (1-999999). The same inputs and seed always give the same puzzle; pass a different seed for a new layout. Example: 2024 | |
| size | No | Grid width and height in letters (8-25). Leave out to size the grid automatically from the words. Example: 15 | |
| paper | No | Paper size for the printable PDF: letter (US, default) or a4. Example: a4 | |
| title | No | Title printed on the puzzle and PDF. Example: "Ocean Animals Word Search" | |
| words | Yes | 5 to 40 words to hide. Accents, spaces and punctuation are removed ("sea horse" -> SEAHORSE). Example: ["dolphin","octopus","shark","coral","whale"] | |
| difficulty | No | easy = words run right and down; medium (default) = adds diagonals; hard = all 8 directions including backwards. Example: easy |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| grid | Yes | ||
| kind | Yes | ||
| seed | Yes | ||
| size | Yes | ||
| notes | Yes | ||
| paper | Yes | ||
| title | Yes | ||
| words | Yes | ||
| pdf_note | No | ||
| unplaced | Yes | ||
| downloads | Yes | ||
| difficulty | Yes | ||
| directions | Yes |