main ide gui implementation