GitHubの活発なリポジトリを表示するアプリです。ユーザー名を入力して、そのユーザーのリポジトリ一覧を表示することもできます。
Kotlin Multiplatform で構築し、iOS・Android それぞれネイティブ UI で動作します。
| トレンド画面 | 検索画面 |
|---|---|
![]() |
![]() |
![]() |
![]() |
| レイヤー | 技術 |
|---|---|
| 共通ロジック | Kotlin Multiplatform |
| DI | metro |
| 通信 | Ktor |
| JSON | kotlinx.serialization |
| 非同期 | kotlinx.coroutines |
| 多言語化 | Moko Resources |
| iOS Swift 連携 | SKIE |
| Android UI | Jetpack Compose |
| iOS UI | SwiftUI |
| 状態管理 | ViewModel (KMP版) + StateFlow |
├── shared/ # DI グラフ定義
├── domain/
│ ├── model/ # データモデル
│ └── contract/ # DIP のためインターフェースを定義
├── data/
│ ├── api/ # API クライアント(Ktor)
│ └── repository/ # リポジトリ実装
├── feature/
│ └── search/ # ViewModel + UI 状態
├── androidApp/ # Android アプリ(Jetpack Compose)
└── iosApp/ # iOS アプリ(SwiftUI)
./gradlew :androidApp:assembleDebugiosApp/iosApp.xcodeproj を Xcode で開いて Run。
Xcodeが使う Java が 21 となるようにする必要があります。必要に応じて iosApp/.xcode.env.local を作成してください。
export JAVA_HOME="/Applications/Android Studio.app/Contents/jbr/Contents/Home"




