finally built the front interface