Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joreilly/BikeShare
SwiftUI, Jetpack Compose, and Compose for Desktop based Kotlin Multiplatform project (using CityBikes API http://api.citybik.es/v2/). Uses Realm for local persistence
https://github.com/joreilly/BikeShare
android citybikes-api ios jetpack-compose jetpack-room kotlin kotlin-coroutines kotlin-inject kotlin-multiplatform kotlin-multiplatform-mobile kotlin-native kotlinx-serialization ktor mvvm swift swiftui viewmodel wasm
Last synced: about 1 month ago
JSON representation
SwiftUI, Jetpack Compose, and Compose for Desktop based Kotlin Multiplatform project (using CityBikes API http://api.citybik.es/v2/). Uses Realm for local persistence
- Host: GitHub
- URL: https://github.com/joreilly/BikeShare
- Owner: joreilly
- License: apache-2.0
- Created: 2019-11-17T17:37:23.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2024-10-30T17:07:36.000Z (about 1 month ago)
- Last Synced: 2024-10-30T18:19:38.395Z (about 1 month ago)
- Topics: android, citybikes-api, ios, jetpack-compose, jetpack-room, kotlin, kotlin-coroutines, kotlin-inject, kotlin-multiplatform, kotlin-multiplatform-mobile, kotlin-native, kotlinx-serialization, ktor, mvvm, swift, swiftui, viewmodel, wasm
- Language: Kotlin
- Homepage:
- Size: 8.21 MB
- Stars: 693
- Watchers: 18
- Forks: 49
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-list - joreilly/BikeShare - SwiftUI, Jetpack Compose, and Compose for Desktop based Kotlin Multiplatform project (using CityBikes API http://api.citybik.es/v2/). Uses Realm for local persistence (Kotlin)
- fucking-open-source-ios-apps - BikeShare
README
# BikeShare
![kotlin-version](https://img.shields.io/badge/kotlin-2.0.0-blue?logo=kotlin)
Jetpack Compose and SwiftUI based Kotlin Multiplatform sample project (based on [CityBikes API](http://api.citybik.es/v2/)).
Running on
* iOS (SwiftUI)
* Android (Jetpack Compose)
* Desktop (Compose for Desktop)
* Web (Wasm based Compose for Web)
* Swift Executable PackageRelated posts:
* [Using SwiftUI and Compose to develop App Widgets on iOS and Android](https://johnoreilly.dev/posts/ios-android-widget-kmp/)
* [Bridging the gap between Swift 5.5 concurrency and Kotlin Coroutines with KMP-NativeCoroutines](https://johnoreilly.dev/posts/kmp-native-coroutines/)
* [Creating a Swift command line app that consumes Kotlin Multiplatform code - Part 2](https://johnoreilly.dev/posts/swift-command-line-kotlin-multiplatform-part2/)
* [Using kotlin-inject in a Kotlin/Compose Multiplatform project](https://johnoreilly.dev/posts/kotlin-inject-kmp/)![BikeShare Screenshot](/art/screenshot_ios_swiftui.png?raw=true )
### Building
Need to use at least Android Studio Arctic Fox to build/run the Android client.
Requires Xcode 13.2 or later (due to use of new Swift 5.5 concurrency APIs). When opening iOS project remember to open `.xcworkspace` file (and not `.xcodeproj` one)
### Compose for Desktop client
This client is available in `compose-desktop` module. Note that you need to use appropriate version of JVM when running (works for example with Java 11)
Note that this makes use of https://github.com/Shusshu/android-flags for flag images shown.
## Full set of Kotlin Multiplatform/Compose/SwiftUI samples
* PeopleInSpace (https://github.com/joreilly/PeopleInSpace)
* GalwayBus (https://github.com/joreilly/GalwayBus)
* Confetti (https://github.com/joreilly/Confetti)
* BikeShare (https://github.com/joreilly/BikeShare)
* FantasyPremierLeague (https://github.com/joreilly/FantasyPremierLeague)
* ClimateTrace (https://github.com/joreilly/ClimateTraceKMP)
* GeminiKMP (https://github.com/joreilly/GeminiKMP)
* MortyComposeKMM (https://github.com/joreilly/MortyComposeKMM)
* StarWars (https://github.com/joreilly/StarWars)
* WordMasterKMP (https://github.com/joreilly/WordMasterKMP)
* Chip-8 (https://github.com/joreilly/chip-8)