refactor the showcard