目的・役割

iOS ホーム画面に配置できる中サイズのウィジェット。今週のログイン状況をカレンダー形式で表示。 連続ログイン日数も表示してエンゲージメント維持を支援。

UI 構成

要素種類説明
曜日ヘッダーHStack日〜土
週間グリッドHStack各日: ログイン済 = ★、未ログイン = ○
連続ログイン日数Text「連続Nログイン中」
アプリロゴImage右下

データソース

WidgetCalendarData {
    let loginDaysThisWeek: [Bool]   // 7要素(日〜土)
    let loginStreak: Int
    let updatedAt: Date

    static func load() -> WidgetCalendarData? {
        // AppGroup UserDefaults キー: widgetCalendarData
    }
}

更新タイミング

実装メモ

関連

変更履歴

バージョン日付変更内容
1.02026-05-09初版作成