Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/khubaibkhan4/crypto-kmp

Crypto-KMP Developed using Kotlin Mulitplatform and Contains the Android, iOS, Web And Desktop Applications.
https://github.com/khubaibkhan4/crypto-kmp

android-application compose-multiplatform cross-platform cryptobot cryptocurrencies cryptocurrency desktop-app ios-app jvm kotlin-js kotlin-multiplatform multiplatform-compose multiplatform-kotlin-library swiftui wasm-pack

Last synced: 4 days ago
JSON representation

Crypto-KMP Developed using Kotlin Mulitplatform and Contains the Android, iOS, Web And Desktop Applications.

Awesome Lists containing this project

README

        

# Crypto KMP
![Crypto KMP](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/poster_crypto.png)

## Overview
Crypto-KMP is a Kotlin Multiplatform (KMP) project aimed at providing cryptocurrency-related functionalities across Android, iOS, Web, and Desktop platforms with shared code. This documentation provides an overview of the project structure, features, and usage instructions.

## 🚀 Future Plans
- TV and Wear OS Versions
- Real-time Tracking

## 🌟 Contributions
If you wanna contribute, Please make sure to add new features & Then make a PR.Feel free to contribute to the project and stay tuned for more exciting updates!

# Open To Work
Do you wanna Convert your thoughts into Physicall & Successfull Project Then I'm here for you. I'm open to work, available for Freelance or Remote Work Opportunities. Feel free to reach me out on Email.

## 🤝 Connect with Me

Let's chat about potential projects, job opportunities, or any other collaboration! Feel free to connect with me through the following channels:

[![LinkedIn](https://img.shields.io/badge/LinkedIn-Connect-blue?style=for-the-badge&logo=linkedin)](https://www.linkedin.com/in/khubaibkhandev)
[![Twitter](https://img.shields.io/badge/Twitter-Follow-blue?style=for-the-badge&logo=twitter)](https://twitter.com/codespacepro)
[![Email](https://img.shields.io/badge/Email-Drop%20a%20Message-red?style=for-the-badge&logo=gmail)](mailto:[email protected])

## 💰 You can help me by Donating
[![BuyMeACoffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-ffdd00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black)](https://buymeacoffee.com/khubaibkhan) [![PayPal](https://img.shields.io/badge/PayPal-00457C?style=for-the-badge&logo=paypal&logoColor=white)](https://paypal.me/18.bscs) [![Patreon](https://img.shields.io/badge/Patreon-F96854?style=for-the-badge&logo=patreon&logoColor=white)](https://patreon.com/MuhammadKhubaibImtiaz) [![Ko-Fi](https://img.shields.io/badge/Ko--fi-F16061?style=for-the-badge&logo=ko-fi&logoColor=white)](https://ko-fi.com/muhammadkhubaibimtiaz)

# Tech Stack Highlights

- **Kotlin Multiplatform**: `2.0.0`
- **AGP (Android Gradle Plugin)**: `8.2.2`
- **Compose**: `1.6.11`
- `androidx-appcompat`: `1.6.1`
- `androidx-activityCompose`: `1.9.0`
- `compose-uitooling`: `1.6.7`
- `composeImageLoader`: `1.7.1`
- `composeIcons`: `1.1.0`
- **Core Libraries**: `12.1.0`
- **Kotlinx Libraries**:
- `kotlinx-coroutines`: `1.9.0-RC`
- `kotlinx-serialization`: `1.6.3`
- `kotlinx-datetime`: `0.5.0`
- **Networking**:
- `coilNetwork`: `3.0.0-alpha01`
- `ktor`: `2.3.12`
- **Dependency Injection**:
- `koin`: `3.6.0-Beta4`
- **UI/UX**:
- `compose-uitooling`: `1.6.3`
- `composeIcons`: `1.1.0`
- **Logging**:
- `napier`: `2.6.1`
- **Database/Storage**:
- `sql-delight`: `2.0.1`
- **JSON Parsing**:
- `json`: `1.6.3`
- **Build Configurations**:
- `buildConfig`: `4.1.1`
- **Cross-Platform Image Loading**:
- `kamelImage`: `0.9.4`
- **Size Measurement**:
- `size`: `0.3.1`
- **Voyager Navigation**: `1.1.0-Beta`
- **Other Utilities**:
- `official-viewModel`: `2.8.0`

## Android Screen Shots

| ![Screenshot 1](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/1.png) | ![Screenshot 2](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/2.png) | ![Screenshot 3](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/3.png) |
| --- | --- | --- |
| ![Screenshot 4](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/4.png) | ![Screenshot 5](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/5.png) | ![Screenshot 6](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/6.png) |
| --- | --- | --- |
| ![Screenshot 7](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/7.png) | ![Screenshot 8](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/8.png) | ![Screenshot 9](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/9.png) |
| --- | --- | --- |
| ![Screenshot 10](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/10.png) | ![Screenshot 11](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/11.png) | ![Screenshot 12](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/12.png) |
| --- | --- | --- |
![Screenshot 13](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/13.png) | ![Screenshot 14](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/14.png) | ![Screenshot 15](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/15.png) |
| --- | --- | --- |
| ![Screenshot 16](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/16.png) |

## iOS Screen Shots

| ![Screenshot 1](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/55.png) | ![Screenshot 2](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/56.png) | ![Screenshot 3](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/57.png) |
| --- | --- | --- |
| ![Screenshot 4](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/58.png) | ![Screenshot 5](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/59.png) | ![Screenshot 6](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/60.png) |
| --- | --- | --- |
| ![Screenshot 7](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/61.png) | ![Screenshot 8](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/62.png) | |
| --- | --- | --- |

## Desktop Screen Shots

| ![Screenshot 1](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/40.png) |
| --- |
| ![Screenshot 2](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/41.png) |
| ![Screenshot 3](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/42.png) |
| ![Screenshot 4](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/43.png) |
| ![Screenshot 5](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/44.png) |
| ![Screenshot 6](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/45.png) |
| ![Screenshot 7](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/46.png) |
| ![Screenshot 5](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/47.png) |
| ![Screenshot 6](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/48.png) |
| ![Screenshot 7](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/49.png) |
| ![Screenshot 8](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/50.png) |
| ![Screenshot 9](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/51.png) |
| ![Screenshot 10](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/52.png) |
| ![Screenshot 11](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/53.png) |
| ![Screenshot 12](https://github.com/KhubaibKhan4/Crypto-KMP/blob/master/assests/screenshots/54.png) |

## Before running!
- check your system with [KDoctor](https://github.com/Kotlin/kdoctor)
- install JDK 17 or higher on your machine
- add `local.properties` file to the project root and set a path to Android SDK there

### Android
To run the application on android device/emulator:
- open project in Android Studio and run imported android run configuration

To build the application bundle:
- run `./gradlew :composeApp:assembleDebug`
- find `.apk` file in `composeApp/build/outputs/apk/debug/composeApp-debug.apk`
Run android simulator UI tests: `./gradlew :composeApp:pixel5Check`

### Desktop
Run the desktop application: `./gradlew :composeApp:run`
Run desktop UI tests: `./gradlew :composeApp:jvmTest`

### iOS
To run the application on iPhone device/simulator:
- Open `iosApp/iosApp.xcproject` in Xcode and run standard configuration
- Or use [Kotlin Multiplatform Mobile plugin](https://plugins.jetbrains.com/plugin/14936-kotlin-multiplatform-mobile) for Android Studio
Run iOS simulator UI tests: `./gradlew :composeApp:iosSimulatorArm64Test`

### Experimental Browser (JS)
Run the browser application: `./gradlew :composeApp:jsBrowserDevelopmentRun --continue`
Run browser UI tests: `./gradlew :composeApp:jsBrowserTest`

## Community Resources
Join our community to connect with other users and contributors:

- **Documentation**: Find more information and resources in our [documentation](https://github.com/KhubaibKhan4/Youtube-Clone-KMP/wiki).
- **Forums**: Ask questions and discuss ideas in our [community forums](https://github.com/KhubaibKhan4/Youtube-Clone-KMP/discussions).
- **Chat**: Join our community chat on [Slack](https://join.slack.com/t/kotlinmultipl-gr51340/shared_invite/zt-2go24sz06-_lyxM2arRifMqwAPN2EzoA) to chat with other users and contributors.

## Acknowledgments
We'd like to thank the following individuals and organizations for their contributions to the YouTube Clone project:

- No Contributor Yet.
- Checkout Other cool projects on my profile as well.