Refactored code into separate apps