app structure and basic files