Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/joreilly/GalwayBus
Galway Bus Kotlin Multiplatform project using Jetpack Compose and SwiftUI
https://github.com/joreilly/GalwayBus
android architecture-components coroutines coroutines-flow fastlane ios jetpack-compose koin kotlin kotlin-multiplatform kotlin-multiplatform-mobile kotlin-native ktor swift swiftui viewmodel
Last synced: about 2 months ago
JSON representation
Galway Bus Kotlin Multiplatform project using Jetpack Compose and SwiftUI
- Host: GitHub
- URL: https://github.com/joreilly/GalwayBus
- Owner: joreilly
- License: mit
- Created: 2017-07-06T20:33:42.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2024-04-12T17:35:10.000Z (8 months ago)
- Last Synced: 2024-04-13T21:55:50.225Z (8 months ago)
- Topics: android, architecture-components, coroutines, coroutines-flow, fastlane, ios, jetpack-compose, koin, kotlin, kotlin-multiplatform, kotlin-multiplatform-mobile, kotlin-native, ktor, swift, swiftui, viewmodel
- Language: Kotlin
- Homepage:
- Size: 6.12 MB
- Stars: 490
- Watchers: 16
- Forks: 41
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-kotlin-multiplatform - GalwayBus
README
### Galway Bus Kotlin Multiplatform project using Jetpack Compose and SwiftUI
![kotlin-version](https://img.shields.io/badge/kotlin-2.0.0-blue?logo=kotlin)
**Note**: if you are trying this project out and aren't in Galway then hit the home icon in title bar to center in Galway so you can see meaningful data!
### Kotlin Multiplatform
This project also acted as initial platform I used when starting to explore **Kotlin Multiplatform**
capabilities. There's a Kotlin Multiplatform `ShareCode` module for example along with sample Android, iOS
and macOS apps. Also wrote a number of posts about some of my experiences using **KMP** in the project.* [SwiftUI meets Kotlin Multiplatform!](https://johnoreilly.dev/2019/06/08/swiftui-meetings-kotlin-multiplatform/)
* [Introduction to Multiplatform Persistence with SQLDelight](https://johnoreilly.dev/posts/sqldelight-multiplatform/)
* [Using Google Maps in a Jetpack Compose app](https://johnoreilly.dev/posts/jetpack-compose-google-maps/)
* [Using Google Maps in a Jetpack Compose app - Part 2!](https://johnoreilly.dev/posts/jetpack-compose-google-maps-part2/)### Google Maps SDK
The project depends on `GOOGLE_API_KEY` environment variable to be defined for maps functionality to work. Alternatively
you can update where this is read in `build.gradle`### Screenshots
**Android (Jetpack Compose)**
**iOS (SwiftUI)**
### Languages, libraries and tools used
* [Kotlin](https://kotlinlang.org/)
* [Kotlin Corooutines](https://kotlinlang.org/docs/reference/coroutines-overview.html)
* [Kotlinx Serialization](https://github.com/Kotlin/kotlinx.serialization)
* [Ktor client library](https://github.com/ktorio/ktor)
* [Android Architecture Components](https://developer.android.com/topic/libraries/architecture/index.html)
* [Koin](https://github.com/InsertKoinIO/koin)
* [Jetpack Compose](https://developer.android.com/jetpack/compose)
* [Maps Compose](https://github.com/googlemaps/android-maps-compose)
* [SwiftUI](https://developer.apple.com/documentation/swiftui)
* [KMP-NativeCoroutines](https://github.com/rickclephas/KMP-NativeCoroutines)
* [Multiplatform Settings](https://github.com/russhwolf/multiplatform-settings)## 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)