improve app structure a little bit