One platform

Flux is written in Java and therefore runs on platforms where Java is available.


Open source

Released under version 3 of the LGPL. Fork it on GitHub if you like!


Universal Chess Interface

Pure engine, no graphical user interface. Go get Arena, one of the best GUIs!


Flux Chess is an attempt to write a computer chess engine entirely in Java. The speed of most Java Virtual Machines is improving nowadays. However compared to other C/C++ chess engines Flux is still slow (or maybe my algorithms are not that sophisticated?).

As a pure UCI chess engine, Flux does not have a graphical user interface. You can load him however into your favorite chess program if it supports the UCI protocol. I suggest you take a look at the free chess program Arena. I’m personally testing Flux with the Shredder Classic chess program.

If you find any bugs or just want to write a comment, don’t hesitate to contact me.


Below you will find a small list of what I have already implemented in Flux. Nothing special though as many computer chess engines have those features as well.

In addition Flux supports multi pv output, which means Flux can show multiple best pv lines.


  • 0x88 Board Representation


  • Alpha-Beta Search
  • Quiescent Search
  • Iterative Deepening
  • Internal Iterative Deepening
  • Principal Variation Search
  • Aspiration Windows


  • Transposition Table with Zobrist Keys
  • Killer Moves
  • History Heuristic


  • Mate Distance Pruning
  • Verified Null-Move Pruning
  • Futility Pruning, Extended Futility Pruning
  • Late Move Reduction


  • Single-Reply Extension
  • Check Extension
  • Pawn Extension
  • Recapture Extension
  • Mate Threat Extension