build the fundamental app framework