[ハルハル] 生産性 有料ランキング1位


📌 概要


🧩 プロジェクト紹介

「하루하루」は韓国伝統の坊主時間割から着想を得た 円形時間割ベースの時間管理アプリです。iPhone、iPad、Apple Watchの全デバイスで利用可能で、iCloudによる自動同期、ウィジェットおよびApple Watchコンプリケーションを通じて アプリを開かずに予定を確認できるユーザー体験を提供します。

SwiftUI、CoreData、CloudKit、WidgetKit、WatchKitなどiOSの最新技術を積極的に活用して 開発者1人で管理可能な範囲内で最高のユーザー体験を提供することを目標としています。


🔧 技術スタックとアーキテクチャ

  • 使用言語: Swift

  • UIフレームワーク: SwiftUI + UIKit(混用)

  • アーキテクチャ: MVVM + クリーンアーキテクチャ

  • ローカル / クラウドデータ: CoreData + CloudKit(iCloud連携)

  • 機能拡張:

    • WidgetKit: カウントダウンおよび時間割ウィジェット

    • WatchKit + ClockKit: Apple Watchアプリ + コンプリケーション

    • CoreAnimation、CoreGraphics: カスタム円形UIレンダリング

    • StoreKit: アプリ内課金による機能制限


🚀 主な機能と実装事例

1. 円形時間割 UI

  • CoreGraphics、CoreAnimation を用いた 円形の時計型時間割UIを直接実装

    • Widget、Watch Extensionでの円形時間割UIはSwiftUIを使用して別途UI実装

UIControlを活用して時間範囲入力コンポーネントを実装
メイン画面のビュー階層

2. デバイスの特性に応じたUX提供

  • iPhone: 円形ダイアグラム中心の単一ビューを提供 → 集中した予定確認

  • iPad: リスト+円形ダイアグラムを同時提供(Split View)→ ナビゲーション性と可読性強化

  • デバイス特性に合わせて 差別化されたUX設計

iPhone メイン画面
iPad メイン画面 - SplitViewController を活用

3. iCloud同期および複数デバイス対応

  • CoreData + CloudKit連携を通じて 全てのデバイス間でのデータ自動同期 をサポート

  • 同期失敗および競合処理ロジックを自ら実装

4. ウィジェットおよびApple Watch対応

  • WidgetKitで 時間割プレビュー、カウントダウン など様々なウィジェットを実装

  • WatchKit + ClockKitを活用してApple Watchアプリ+コンプリケーション機能を実装

    • WatchコンプリケーションもWidgetKitで統合して実装。

iOSアプリウィジェット
Apple Watchコンプリケーション

5. プレミアム機能ロック(IAP)

  • アプリ内課金による機能のロック/解除

  • App Storeレシートに基づくユーザー権限確認ロジックを実装


🎯 成果

  • 2019〜2024 韓国 App Store 今日のアプリ選出

  • 2024 中国 App Store ピックアップ 経験

  • 有料アプリカテゴリで上位を維持(最高2位)

  • ユーザーレビュー5000件以上

  • ユーザーレビュー4.6で比較的高い評価を維持


🧠 振り返り

  • SwiftUI初期バージョンから経験し、エコシステムの変化に柔軟に対応

  • 開発者として継続的成長の原動力となる

    • iOS、Swiftのアップデートやアーキテクチャパターン等を先に適用して学習する機会を提供

  • iCloud連携、WatchKit、ウィジェット等iOSエコシステムの幅広い技術を実戦で経験

  • 単独開発者として運営、デザイン、ユーザーフィードバックの反映など 製品全体のライフサイクルを経験

最終更新