Dear Reviewer, i am using MVVM architecure and following SOLID principles and Clean architecure and Modular design in mind. i have separated business Logic, UI and Network like separate modules. so that we can cover it in unit tests.i have compose the modules in the composition root.and wrote the unit tests.
WorkingDemo.mov
Key features Implemented: • Data fetching and Rendering • Pagination • Heavy Computation & Optimization (Log the API fetch elapsed time) • Callback Memoization
How to run the app: • to run the app in iOS Simulator :
->> launch the TechiebutlerTask.xcodeproj in xcode ->> select the prefered iOS Simulator ->> run the build, ->> once the build succeded, it will launch the app in the simulator.
• to run the app in iOS Devices : ->> launch the TechiebutlerTask.xcodeproj in xcode ->> connect iOS Device(iPhone) with macOS ->> XCode will detect automatically the connected iOS Device(iPhone).or select your iOS Device(iPhone) ->> run the build ->> once the build succeded, it will launch the app in the iOS Device(iPhone)
Screenshots/Video: https://github.com/mammaiap/TechiebutlerTask/blob/main/Demo.MP4 https://github.com/mammaiap/TechiebutlerTask/blob/main/Screenshot_1.PNG https://github.com/mammaiap/TechiebutlerTask/blob/main/Screenshot_2.PNG