I've written a wrapper around Donald Knuth's
dlx1.c
implementation
of an exact-cover solver to use it
from Python
and started collecting
some patterns for expressing more flexible constraints as equivalent
exact-cover problems.
Equality by Exact Cover explores how integer equality can be expressed as an exact-cover problem, and Tiling Grids with (Directed) Loops uses the solver to fill a 2D grid with directed loops.