Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mehrankmlf/EasyCrypto
Clean Architecture and MVVM + Coordinator and Combine
https://github.com/mehrankmlf/EasyCrypto
api apimanager architecture clean-architecture combine coredata coredata-swiftui dependency-injection ios ios-app ios-open-source mvvm-architecture swift swift5 swiftui swiftui-example swiftui-learning unit-testing viewmodel
Last synced: 2 months ago
JSON representation
Clean Architecture and MVVM + Coordinator and Combine
- Host: GitHub
- URL: https://github.com/mehrankmlf/EasyCrypto
- Owner: mehrankmlf
- License: mit
- Created: 2023-01-23T06:02:29.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-08-20T05:07:29.000Z (5 months ago)
- Last Synced: 2024-08-20T07:34:32.454Z (5 months ago)
- Topics: api, apimanager, architecture, clean-architecture, combine, coredata, coredata-swiftui, dependency-injection, ios, ios-app, ios-open-source, mvvm-architecture, swift, swift5, swiftui, swiftui-example, swiftui-learning, unit-testing, viewmodel
- Language: Swift
- Homepage:
- Size: 552 KB
- Stars: 70
- Watchers: 1
- Forks: 10
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- fucking-open-source-ios-apps - EasyCrypto
README
![GitHub Cards Preview](https://user-images.githubusercontent.com/24524023/232792000-f2265938-f65a-44ac-b4a1-f7777967a7ab.png?raw=true)
# EasyCrypto
This project Contains An iOS app designed using Clean Architecture and MVVM wich implemented with SwiftUI.
## Description of The App
EasyCrypto is a simple crypto market app, built with SwiftUI and Combine framework, retrieved data from CoinGecko free APIs that allows developers to access the market data and functionality by making requests with specific parameters to a URL. Conceptual project to present MVVM with new SwiftUI, Combine + Clean approach.
## Concepts Used Here
- Core Data
- Clean Architecture
- MVVM
- Coordinator Pattern
- Dependency Injection
- Caching images
- SwiftLint
- UnitTest## How to run
EasyCrypto requires iOS 15.0 or later. If you are developer, you can set its deployment target to lower iOS version if needed.If your XCode 12.0 is not available, you can change `deployment target` to lower iOS version.
## API
- [CoinGecko](https://www.coingecko.com/en/api/)## Requirements
- iOS 15.0+
- Swift +5## Usage
I have explained about EasyCrypto in the form of a post on Medium.https://medium.com/@mehran.kmlf/clean-architecture-combine-for-swiftui-caf252c0f10c
## Style and conventions - SwiftLint
A script runs when building the app that executes SwiftLint to enforce style & conventions to the code.You can install SwiftLint with Homebrew: brew install swiftlint
## Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/YourFeatureName`)
3. Commit your Changes (`git commit -m 'Add some YourFeatureName'`)
4. Push to the Branch (`git push origin feature/YourFeatureName`)
5. Open a Pull RequestThank you!