Skip to content

bean-i/Crippo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📈 Crippo

  • 開発期間: 2025年4月(4日間)
  • 開発形態: 個人開発

✅ 主な機能

1. トレンド表示
人気コイン TOP15、人気NFT TOP7 をランキング形式で表示

2. コイン検索
名前・シンボルで検索し、詳細画面へ遷移可能

3. お気に入り管理
コインのお気に入り登録/解除、および専用画面で一覧表示

💻 技術スタック

  • 言語: Swift
  • フレームワーク: SwiftUI
  • アーキテクチャ: MVVM (Input/Output パターン)
  • 非同期処理: Combine, Swift Concurrency (async/await)
  • ネットワーク: URLSession
  • データベース: Realm

🔎 工夫した点

1. SwiftUI 状態管理とレンダリング最適化

  • @StateObjectViewModelのライフサイクルを固定し、下位ビューには@ObservedObjectで共有
  • 画面専用のView State(Output)のみを公開し、不要な再レンダリングを抑制
  • カスタムLazyViewを導入し、TabViewの非表示タブ初期化を遅延させ初回描画を軽量化

2. MVVM + Action/Output パターン

  • ViewModelTypeプロトコルでInput/Action/Output構造を統一
  • ViewはInput送信とOutput購読のみを担当し、単方向データフローを維持

3. Combine + Swift Concurrency

  • ユーザー入力や画面イベントをSubjectベースで管理 (Combine)
  • ネットワーク呼び出しは**async/awaitで実装し、依存関係のないものはasync letで並列実行**
  • ViewModelでCombineイベントとConcurrency処理を結合し、Outputに反映

📷 画面

トレンド 検索 詳細 お気に入り
Simulator Screenshot - iPhone 14 Pro - 2025-08-29 at 18 33 22  Simulator Screenshot - iPhone 14 Pro - 2025-08-29 at 18 33 36  Simulator Screenshot - iPhone 14 Pro - 2025-08-29 at 18 53 18  Simulator Screenshot - iPhone 14 Pro - 2025-08-29 at 18 33 42

About

[SwiftUI] コインのレートとトレンドを確認・保存できるアプリ

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages