first version with basic gui