project setup + main