I have a UCI-compatible chess engine which I modified to play a chess variant (gravity chess, where all non-pawn pieces fall towards increasing rank). However, there's no easy way to play against the modified engine in a GUI, since it assumes the engine is playing either standard chess or one of a few variants. Is there any UCI GUI which supports arbitrary variants, or one that is easy to modify to support gravity chess?
CECP (xboard) goes quite far in allowing using the protocol to play chess variants, though I'm sure you can cook up something that goes beyond its limits.
FairyFishGUI is a minimal GUI that's used to have a simple GUI for new variants added to Fairy Stockfish, a variants chess engine. It should be fairly simple to modify to support your variant. The Fairy Stockfish project in general is a good place to start looking for how to support oddball variants.