Design and initial setup