Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vishalkalola1/testflickr
https://github.com/vishalkalola1/testflickr
Last synced: 6 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/vishalkalola1/testflickr
- Owner: vishalkalola1
- Created: 2022-09-25T15:21:17.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2022-09-25T17:43:33.000Z (about 2 years ago)
- Last Synced: 2023-03-10T03:51:08.987Z (over 1 year ago)
- Language: Swift
- Size: 115 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# iOS assignment | TestFlickr
### **High-level review of the application**
- Created file structure as per features and includes files(view, viewmodel, subviews..) into one group
- Used MVVM architecture with SOLID principles
- Made project unit testable using dependency injection whereever applicable.
- Improved test coverage for the all viewmodels
- Used composable views to build nested screens
- I would recommond usage of SPM for third party libraries.
- Image loading asynchronously
- I would recommond the modular structure based on feature.
- I would recommond Use Liniting tools eg. SwiftLint### **Things that can be improved**
- Support of accessibility
- Introduce XCUItest
- Modularization
- Dark theme support
- dynamic fonts
- Indroduce loading indicator
- Introduce internet connectivity and failure and retry screens
- Introduce async/await for better performance and clean architecture.
- Image Cached Or might be use third party framework
- Network API calling framework
- Architecture
- Error Handling##### **Notes: The project works with Xcode 14.0 and above iOS 15 (Not sure about lower version might some apple api won't work) and the language used is Swift. Must run project into simulator Or device not into swiftUI preview. SwiftUI preview can not able to open keyboard so you will not able to see recent search after search**
### **Let me know if you still have difficulties to run code. or send me an email at [email protected]**