Take the chess graphism, and use it with a chess engine.
You are given a chess graphical interface, with drag and drop functionnalities (or other interaction mode), board flipping, and some pieces/cells sets given. Then, you have some callbacks methods in order to validate moves from your chess engine and to update them to your chess engine.
AntiChess is an anti chess game written in Java. The goal is to get checkmated or lose all your pieces except your king to your opponent. You have to take your opponents piece if you can. It supports 2 player and 4 player games on the same board.