refactored app data collection