The solution is outlined in this blog post: https://vandine.biz/blog/solve-the-jumble
The repository includes:
- puzzlewords.sqlite, which is a SQLite version of the word list and sorted 'key' as described in the blog post.
- wordlistsql.py, a Python 3 script to create the PuzzleWords database and table from a text listing of words.
- jumble.php, a PHP script that provides the HTML entry form and solving function needed to submit a scrambled word and get an answer.
- jumble.py, a Python 3 version of the script that can be run from the command line