powerful config generator (based on json)