I don't know "Internet Chess Club server" but I guess you have to speak its network protocol. So either find and wrap a client already build or build it yourself via nims asyncnet module.
For the gui part I would tackle this with a combination of gtk (gintro module) which displays the advanced gui stuff and a gl context where I would use sfml to render the chess board with its sprites. I've never combined gtk and sfml in nim though, but this is the way I would go.