Tool for helping creating logical puzzles manually.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


There exists a wide range of logical puzzle types, the most famous of them being Sudoku. Croco is a tool, that helps creating such puzzles manually by providing features for creating, checking and converting such files.

Supported puzzle types

Yet, there are only five types supported, but more is comming soon.


For my work as a professional puzzle author, I needed some software for creating puzzles. These software has been written as proprietary software starting in 2002 and has undergone several changes since then, using Java, Perl and PHP.

Now, a new version has been called for, which shall be free software and is written with a PHP frontend and a D backend.

Build and Install

There are various ways to build and install croco. The following instructions are meant for Debian users. It might work with other Linuxes too, but I haven't tried that. Theoretically the approach with CMake should even work, when using other operating systems. But I doubt this until someone tells me, that he did it successfully.

Use of debugging scripts

In the subfolder devel/ are some scripts, that I'm using for debugging. Calling or compiles all binaries. You need either gdc or ldc for that. Additionally gcc and the slang library have to be installed.

After that, you can call just like you would call croco otherwise.

Using CMake

The project can also be build by using cmake. Additionally to cmake, you need cmake-d and one of the D comilers (gdc, ldc2 or dmd). At the time of this writing gdc doesn't work due to a bug (in gdc). To select ldc2 type

$ export DC=ldc2

Now you can start cmake in an empty build directory with

$ cmake -DCMAKE_MODULE_PATH:PATH=/path/to/cmake-d/ -DCMAKE_INSTALL_PREFIX=/path/where/croco/should/be/installed path/to/sources

If everything works, you can build and install croco with

$ make install/strip

If it is not allready in your path, you should add the path to the binaries with

$ export PATH=/path/where/croco/should/be/installed/bin:$PATH

Now you should be able to call croco by typing croco.

Using CMake to build a Debian package

CMake is also configured to build a Debian package, that can be installed using dpkg. The commands to do this are:

$ export DC=ldc2
$ cmake -DCMAKE_MODULE_PATH:PATH=/path/to/cmake-d/ -DCMAKE_INSTALL_PREFIX=/usr path/to/sources
$ cpack -G DEB

You should end with a .deb file in your build directory, that can be installed using dpkg:

$ sudo dpkg -i croco-0.2-Linux.deb

Again, croco should now be usable by typing croco.

Using a predefined tarball or Debian package

For 64-bit-computers, running Linux, we have a precompiled tarball as well as a debian package available. Point your browser to

There you can find downloads. (Note, that this page is written in German, but it shouldn't be hard to find the downloads.)