simple-wordsearch-generator
v1.0.0
Published
A production-grade Word Search (wykreślanka) generator built in TypeScript.
Downloads
155
Readme
Word Search Generator
A production-grade Word Search (wykreślanka) generator built in TypeScript.
This generator aims to create dense, interlocking puzzles similar to hand-crafted ones found in newspapers, moving away from sparse, random placements.
Features
- High-Quality Puzzles: Utilizes Beam Search and Backtracking algorithms to find the best possible placements.
- Advanced Heuristics: Custom candidate scoring and board evaluation based on density, crossings (intersections), and uniform distribution.
- TypeScript & SOLID: Strictly typed, modular, and testable architecture.
- Extensive Configuration: Customize grid size, direction rules, attempt counts, and beam search width.
API Usage
import { WordSearchGenerator } from 'wordsearchgenerator';
const words = ['TYPESCRIPT', 'JAVASCRIPT', 'REACT', 'NODEJS'];
const result = WordSearchGenerator.generate(words, {
gridSize: 15,
allowReverseWords: true,
allowDiagonalWords: true,
attemptCount: 10,
beamWidth: 10,
beamExpand: 5
});
console.log(result.grid); // 2D Array
console.log(result.score); // 0-100 Score
console.log(result.metrics); // Detailed breakdownRunning the Example
npm install
npm run tsx usage-example.tsRunning Tests
npm test