This is an interactive reimplementation (see my original) of the "Word Rectangles" example from The Art of Computer Programming, Volume 4 Fascicle 5, Chapter 7.2.2. It searches a list of five-letter words to find configurations that can be placed in a 5x5 grid, where each column is a unique word from the list, and the rows are also words. You can take a look at the source code in my repo.
I've enhanced it by adding the ability to constrain which letters appear in which positions; use the clunky form input at the bottom to add constraints. If you overconstrain the problem, the grid will go red; remove constraints to recover.
The source wordlist is the list of five-letter English words from the Stanford Graphbase. Fair warning; Knuth included all the five-letter words.