keiranking / Phil

A crossword maker.
http://www.keiranking.com/phil
Apache License 2.0
282 stars 85 forks source link

Phil, a crossword maker

Phil helps you make crosswords, using client-side JavaScript.

Related repositories

Phil uses Font Awesome icons and jsPDF (along with jsPDF-AutoTable) for generating PDFs.

The Phil solving engine (in progress) uses the Glucose 3.0 SAT solver. The sources (with our modifications) are in the third_party directory.

Getting started

To use Phil:

  1. Go to keiranking.com/phil.

To run your own copy of Phil:

  1. Install a working Emscripten environment. On Mac, using homebrew is a good choice.

  2. From the command line, run:

    cd third_party/glucose-3.0/simp
    make xwsolve.js

    At this point, xwsolve.js and xwsolve.wasm should be generated.

  3. Go back to the Phil main directory (cd ../../..) and create symbolic links (aliases):

    ln -s third_party/glucose-3.0/simp/xwsolve.* .
  4. Run a local webserver. If you have Python 3 installed, then:

    python3 -m http.server 8000

    If you have only Python 2 installed, then:

    python -m SimpleHTTPServer 8000
  5. Point your browser to localhost:8000.

Crossword resources

License

Licensed under the Apache License, v2.0 (the 'License').

Unless required by law or agreed in writing, software distributed under the License is distributed on an 'as is' basis, without warranties or conditions, express or implied. See the License for the specific language governing permissions and limitations.

© Keiran King