make the app root more dynamic