Apollo v1.2 continues on the past UCI engine.
Various optimizations have been added, mainly focusing on better move ordering and bug fixes. The evaluation has also been improved.
A depth 10 search takes about 500 ms, depth 12 about 2 seconds from the starting position.
One major issue is the "stop" command is not implemented.

Apollo v1.1 is a functioning UCI engine. Currently it uses MVVLVA for captures, and a history heuristic for move ordering for quiet moves along with a killer move heuristic. It has a 32 mb transition table used for move ordering, however it seems to have much of a less effect than expected. From the start position, it takes about 5 second to run a depth 10 search.
The board is represented with bitboards and magic bitboards are used for move generation, however the move generation is still slow. Perft 5 runs in under a second.

The evaluation function includes passed pawns, isolated pawns, doubled pawns, centralization, and open files for rooks.

The search uses futility and null move pruning. Quiescence search does not include checks or any delta pruning, and runs to an unlimited depth. However it only analyzes moves with a positive static exchange.