refined app structure