need to be modified to give a better entry for controlling the whole project