A Crypto Currency App created using SwiftUI with MVVM architecture
About The Project
A Crypto Currency Tracker created using SwiftUI
with MVVM
architecture.
Braze tracks live prices of crypto coins and can create mock portfolio.
Using Combine
framework with Subscribers/Publishers
for efficient Data loading and
CoreData
for Local Data Persistance.
Show some ❤️ and star the repo to support the project.
Built With
Getting Started
Features
- CoreData
- Combine Framework
- Light/dark mode
- Live prices
- User Portfolio
- iphone and ipad support
- MVVM architecture
- Search Features
- Details of Coins
- Coin Price History
Prerequisites
Before you start running the “Braze” iOS app, ensure you have the following prerequisites:
-
Xcode: Install Xcode, which is the development environment for building iOS apps. You can download it from the Mac App Store.
-
Git: Make sure you have Git installed on your system for version control. You can download and install Git from the Git website.
-
GitHub Account: You’ll need a GitHub account to clone the repository and collaborate with the project. You can sign up for free on the GitHub website.
-
iOS Device or Simulator: To run the app, you can either use a physical iOS device connected to your computer or an iOS simulator provided by Xcode.
Installation
No API key or npm packages are required for the Braze app. Below are the steps to quickly get started.
-
Clone the repository:
git clone https://github.com/RoyNkem/Braze_2.0.git
-
Navigate to the cloned directory:
cd Braze_2.0
-
Run the App Launch the Braze app using a development server:
open Braze_2.0.xcodeproj
ScreenShots
API Reference
Get all coins
GET https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&order=market_cap_desc&per_page=250&page=1&sparkline=true&price_change_percentage=24h
Parameter | Type | Description |
---|---|---|
vs_currency |
string |
Required. currency format |
order |
string |
valid values: market_cap_desc, gecko_desc, gecko_asc, market_cap_asc, market_cap_desc, volume_asc, volume_desc, id_asc, id_desc |
per_page |
integer |
Total results per page |
page |
integer |
Page through results |
sparkline |
boolean |
Include sparkline 7 days data (eg. true, false) |
price_change_percentage |
string |
Include price change percentage in 1h, 24h, 7d, 14d, 30d, 200d, 1y |
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!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
Distributed under the MIT License. See LICENSE.txt
for more information.
Contact
Project Link: Braze_2.0