What it does
A generated puzzle starts from a word in the list with exactly the number of different letters the board holds, so
every board has at least one pangram. The pack then tries each of its letters as the centre and keeps one that gives
between minAnswers and maxAnswers answers, so a board is never trivial and never endless. A seed picks it, so a
day number gives everyone the same daily puzzle; a board you set yourself works the same way.
Every word goes through check or submit, which refuse with a reason a player can read: too short, a letter that is
not on the board, the centre letter missing, not in the word list, or found already. An accepted word scores (a
shortest word 1 point, a longer word a point a letter, a pangram 7 more, or your own scoring), and the result says
whether it reached a new rank and whether the puzzle is complete.
observation() is everything a game draws: the centre and the ring in its current order, the words found, the score
against the puzzle's maximum, the rank with the points to the next one, pangrams found and in all, and counts by word
length. hints() counts the words still to find by first letter and length, and by first two letters, so a hint can
point without telling. Moves are kept on the kernel history, so undo and saves come with it.
Features
- Playable boards — a pangram's letters and a centre chosen for an answer count in range.
- Set boards — your own letters and centre, from any word list.
- Any size — five letters to nine or more, with the shortest word to match.
- The centre rule — required, as in the classic, or turned off.
- Letters kept off —
exclude: 's'keeps easy plurals out. - Pangrams — flagged in every result and counted in the view.
- Points and ranks — the classic scoring or your own, and ranks as shares of the puzzle's points.
- Hints that point — counts by first letter, length and first two letters.
- Shuffles — the ring in a new order, seeded and saved.
- Undo and saves — a seed and a list of moves on the kernel history.
Good for
- A daily word puzzle, one seed for every player.
- A gentler family version, five letters, three-letter words and no plurals.
- An expert board, nine letters and five-letter words.
- A themed puzzle, a board set from a list of your own words.
- A classroom spelling game, where the ranks reward effort and hints keep it moving.
Make it yours
A puzzle takes its letters (a count, or the letters themselves with a centre), requireCentre, minLength,
words, exclude, minAnswers and maxAnswers, scoring and ranks. The pack draws nothing, so the hexagons,
the word being built and the rank bar are yours.
Two puzzles that play differently: the seven-letter classic with the centre required and four-letter words; and a nine-letter board of five-letter words with an answer range of 10 to 200. A third is a board you set from a kitchen word list, with no centre rule.
A quick look
A set board, one word and the view:
const puzzle = createHoneycomb({ seed: day, letters: 'abeklnt', centre: 'k' });
puzzle.check('blanket'); // { ok: true, points: 14, pangram: true }
const r = puzzle.submit('blanket'); // the result says rankUp and complete
const view = puzzle.observation(); // centre, ring, found words, score, rank
puzzle.hints(); // counts of the words left
Works with
english-words— required: the answers come from its lexicon or a list of your own.letter-tiles— draws the board as hexagon tiles you tap, the word being built and the buttons.letter-wheel— when one word's letters should spell a crossword instead.letter-grid— when words should be traced through touching tiles.
Good to know
- It is the rules only: the game draws the board and turns taps or typing into words.
- The English lexicon includes rarer words and plurals;
excludeor a filtered list makes a gentler puzzle. - A set board may have no pangram; a generated one always has one.
- Ranks are shares of this puzzle's points, so a rank means more points on a richer board.






