http://ourworld.cs.com/manyclarks/crossword.html
I wrote this crossword compiler to automatically create crosswords
having specialized printouts. Haven't gotten around to doing the
printout part. There are commercial crossword compilers that have more
features like starting with pre-selected words. This one will fill the
15 x 15 grid in a few seconds average time using a public-domain word
list of 74,673 words. (I need a better list, with the obscure words
weeded out.) I've made this downloadable. With this one you need to
also download the file joecap22.txt and put it in the same subdirectory
as the executable when you run the program. This is the word file that
the program uses to select the words from to fill the grid.