NasaAPOD
Technical Description:
App Runs on Swift 5 + iOS 15 (for testing only traget can be changed)
App Folows MVVM+R pattern where R = router for navigation
App has Test cases just to show case only for 2 viewModels
App Uses CoreData for storage purpose
One might require latest XCOde 13 to run the app
App Flow
Home Screen consists of 3 Sub Flows
1 User can select a date and tap on search to get the APOD for that Date, which will hit the api and shows him the data on next screen.
2 User can Go to search History(Recent searches), app stores all the searches whic user does via searh flow.
**2.1 Here user can delete the data parmanently via swipe to delete.**
**2.1. Here user can search on the basis of date.**
**2.1. Here user can click on any cell to view details**
3 User can go to Favourites, which will show the list of favouries, marked by the user
**3.1 Here user can delete the APOD data permanetly via swipe to delete action in the list**
**3.2 User can click to View details, and on the detail page user can unmark the APOD asnon-faourites**
**3.3 Here user can search on the basis of date.**
Details Screen: It shows the details of APOD (all the requried data fields)
** User can click on the media, to view media on full screen zoom-in/out is supported** ** User can add or remove this APOD from favourites**