First let's try to clear a possible confusion: In the world of board-game programming the word "engine" usually refers to the AI part of the game. The visualization part is called the "GUI".
It took a long time for chess programmers to learn that it was best to separate the engine and the GUI, but you can learn from their experience. These days they run as separate processes that communicate via a pipe. The communication between the GUI and the engine usually happens using one of two text protocols: UCI or Winboard. You can also look at what go engines use, which is called GTP. I suggest you take inspiration from these protocols and then come up with one for your game.
Programming the engine is something that you probably have to do from scratch. But there is a lot of information on how to do it in places like the Chess Programming Wiki, and I have quite a bit of experience too, so you can ask here. Programming the GUI is where perhaps a game engine like Unity could help, depending on how fancy you want your graphics to be.