build setup and initial code