A Sudoku generator, solver, analyzer, and trainer written in Java/Swing.
This is a fork of Hodoku2 by wyzelli, which is a fork of Hodoku by PseudoFish, which is a fork of hodoku by yoki123, which is a clone of HoDoKu originally created by Bernhard Hobiger (hobiwan), who has since passed away.
- Completely scalable, self-explanatory user interface
- Create random puzzles in five configurable difficulty levels
- Supports over 70 human-style solving techniques (singles, subsets, fish, wings, chains, ALS, and more)
- English and German localization
- Fully configurable via a comprehensive preferences dialog
- Powerful booklet printer and extended print options
- Learning and training modes
Windows — run the provided HoDoKu.exe (requires Java 11+ on your PATH).
All platforms — run the JAR directly:
java -Xmx256m -jar HoDoKu-2.3.5.jarPrerequisites: Java 14+ JDK, Maven 3.8+, and one of:
- Inno Setup 6 — for JDK 18+ builds (recommended)
- WiX Toolset 3 — for JDK 14–17 builds
mvn packageOutputs:
| File | Description |
|---|---|
target/HoDoKu-2.3.5.jar |
Runnable JAR — java -jar on any platform |
target/HoDoKu.exe |
Windows launcher (Launch4J wrapper; requires Java) |
target/installer/HoDoKu-2.3.5.exe |
Windows installer — bundles JRE, no Java required |
src/
main/
java/
generator/ # Puzzle generation
solver/ # All solving techniques
sudoku/ # UI, main entry point (sudoku.Main), core data model
resources/
help/ # HTML keyboard reference (EN + DE)
img/ # Icons and images
intl/ # Localization .properties files (EN + DE)
templates.dat
forms/ # NetBeans GUI Builder .form files (IDE reference only)
exemplars-1.0.txt # Example puzzles data
reglib-1.3.txt # Regression library
templates.dat # Runtime template data
CHANGELOG.md
See CHANGELOG.md for the full version history.
See TODO.md for the complete and up-to-date list of planned features and tasks.