enhance app structure