Thanks to visit codestin.com
Credit goes to github.com

Skip to content

DELAxGithub/shigodeki

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

シゴデキ!(Shigodeki)

「仕事ができる」タスク管理アプリ - あらゆる人生のプロジェクトを、家族と一緒に、AIの力で前に進める

Swift Platform Firebase License


📖 目次


🎯 プロダクトビジョン

シゴデキ! は、「人生の大きなプロジェクト」を家族で協力しながら進めるためのタスク管理アプリです。

なぜこのアプリを作るのか

普通のToDoアプリは「個人の生産性」に最適化されています。しかし、人生の本当に大切なプロジェクト——引越し、実家の整理、終活、子育て、起業——は、一人では完結しないのです。

  • 🏠 実家の片付け: 親は「捨てられない」、子は「帰省できる日が限られる」
  • ✈️ 海外移住準備: やることは100以上、期限は刻一刻と迫る
  • 👨‍👩‍👧‍👦 家族プロジェクト: 誰が何をやるのか、進捗が見えない

シゴデキ!は、こうした「人生のプロジェクト」を、AIの提案家族の協力で前に進めます。


🏡 実際のユースケース: 両親の終活プロジェクト

このアプリは、開発者(Dela)自身が2026年3月のスペイン移住前に直面している、実家の整理と両親の終活支援という実際のニーズから生まれました。

背景ストーリー

状況:

  • Delaは2026年3月にスペインへ移住予定
  • 実家(金沢)には物を捨てられない父親と、健康上の理由で動けない母親
  • 限られた帰省日数で、実家を整理し、両親が安心して暮らせる環境を作る必要がある

課題:

  • 👴 父親は物を捨てられない: 防衛的で、「片付け」という言葉に身構える
  • 📦 物が多すぎる: 何から手をつければいいか分からない
  • 時間がない: 移住まで数ヶ月、帰省できる日は限られる
  • 🌍 物理的距離: トロント→金沢の往復、スペイン移住後は更に遠くなる

シゴデキ!による解決アプローチ

1. 「片付け」ではなく「アプリ開発の実証実験」という大義名分

❌ 悪い: 「実家を片付けよう」
✅ 良い: 「僕が開発しているアプリ『シゴデキ!』のモニターになってほしい。
         シニア世代でも使えるか、実証実験に協力してくれない?」
  • 親は「片付けられない人」ではなく「開発パートナー」に
  • 抵抗感が協力意欲に変わる

2. 「捨てない」ルールで心理的ハードルを下げる

迷い箱(保留ボックス)システム:

// シゴデキ!のタスク
Task(title: "レシート・ポイントカード整理")
  ├─ Subtask: "財布から全部出す"
  ├─ Subtask: "期限切れ → 迷い箱へ"  // ← 捨てる判断不要
  └─ Subtask: "よく使う3枚だけ残す"
  • 「捨てる」という苦痛を「移動する」という動作に変換
  • 判断を先送りすることで、行動のハードルを劇的に下げる

3. 「錬金術サイクル」で即時報酬

不用品を発見 → メルカリ/買取業者へ → 売却益でご馳走
              → 「片付け = 楽しい」という記憶に書き換え

Day 1の例:

  1. 財布整理(5分)→ ポイントカード10枚発見
  2. JALカード再発行(探さない!新規申し込み)
  3. 古い電化製品を買取査定
  4. その日のうちに: 査定額で回転寿司へ 🍣

4. AIによる「次の一手」の提案

親世代は「何から始めればいいか分からない」状態に陥りがち。

📸 実家のリビングを撮影
     ↓
🤖 AIが分析: 「まず財布から始めましょう。座ったままできます」
     ↓
📋 具体的なタスクリストを自動生成
     ↓
✅ 一つずつ完了していく達成感

5. 遠隔コラボレーション

Family: "Dela家の終活プロジェクト"
  Members: お父さん(金沢)、お母さん(金沢)、Dela(トロント→スペイン)
  
  Project: "リビング整理"
    ├─ Phase: "財布・小物"      [担当: お父さん] ✅ 完了
    ├─ Phase: "テレビ周り"      [担当: Dela] 🔄 進行中
    └─ Phase: "押入れ"          [担当: お母さん] ⏳ 予定
  • リアルタイム同期で進捗が見える
  • 離れていても「一緒にやっている」感覚
  • 完了するたびに家族に通知が届く

PoC(概念実証)ロードマップ

フェーズ1: Day 1 キックオフ(2025年12月帰省時)

  • プロジェクト説明会: 「アプリのモニター協力」として導入
  • ウォームアップ: 財布整理(5分、座ったまま)
  • JALカード儀式: 「探さないルール」適用
  • テレビIT化: Chromecast設置、スペインとのビデオ通話テスト
  • 報酬: 初日の実験協力費で美味しい食事 🍣

フェーズ2: 継続的な整理(2025年12月〜2026年2月)

  • 週1回のリモートチェックイン(ビデオ通話)
  • AIが次週のタスクを提案
  • メルカリ出品サポート(Delaが代理出品)
  • 進捗に応じて「ご褒美ポイント」付与

フェーズ3: 最終仕上げ(2026年2月帰省時)

  • 残りの大物整理
  • 粗大ゴミ・不用品回収の手配
  • 「完成祝い」として家族旅行

期待される成果:

  1. 📦 物理的成果: 実家のスペース50%増、動線改善
  2. 😊 心理的成果: 両親が「やればできる」という自信を獲得
  3. 📱 プロダクト検証: シニア世代でもUIが使えるかの実証データ
  4. 💝 家族の絆: 離れていても協力できる体験

✨ 主要機能

1. 家族共有プロジェクト

  • 招待コードシステム: 簡単に家族をプロジェクトに追加
  • リアルタイム同期: 誰かがタスクを完了すると全員に通知
  • 役割分担: タスクごとに担当者を割り当て

2. AI駆動のタスク生成

3つのAIモード:

  • 🤖 Claude: 深い理解と文脈に基づく提案
  • 🧠 Gemini: 視覚情報(写真)からタスク抽出
  • OpenAI: 高速で実践的なタスク生成

使用例:

入力: "実家のリビングを片付けたい"(+ 写真添付)

AI出力:
Phase 1: 財布・小物整理(所要時間: 30分、難易度: ★☆☆)
  ├─ レシート・ポイントカード整理
  ├─ 使わないカード → 迷い箱
  └─ 財布を拭く

Phase 2: テレビ周り(所要時間: 1時間、難易度: ★★☆)
  ├─ 配線整理
  ├─ 古いリモコン処分
  └─ Chromecast設置
...

3. フェーズ管理

大きなプロジェクトを「消化可能なフェーズ」に分割:

Project: "スペイン移住準備"
  ├─ Phase 1: ビザ申請 [完了: 8/10タスク]
  ├─ Phase 2: 住居探し [進行中: 3/12タスク]
  ├─ Phase 3: 荷物整理 [未着手]
  └─ Phase 4: 送別会 [未着手]

4. テンプレートライブラリ

よくあるプロジェクトは、すぐに始められる:

  • 🏠 引越しテンプレート: 住所変更、インフラ契約、荷造り...
  • 👶 出産準備テンプレート: 病院選び、ベビー用品、行政手続き...
  • 💼 起業テンプレート: 法人設立、開業届、営業準備...
  • 🧓 終活テンプレート: 財産整理、エンディングノート、葬儀準備...

5. 迷い箱(保留)機能

捨てるか迷ったものを「判断保留」にできる:

Task: "古いTシャツ10着"
  Status: .pending  // 「迷い箱」ステータス
  ReviewDate: Date() + 30.days  // 30日後に再評価
  Note: "一度も着なかったら処分"

6. KPI/進捗ダッシュボード

プロジェクト全体の健康状態を可視化:

  • 📊 完了率(全体 / フェーズ別)
  • ⏱️ 作業時間の見積もりと実績
  • 👥 メンバー別の貢献度
  • 🎯 マイルストーン達成状況

🛠 技術スタック

フロントエンド

  • Swift 5.9 / SwiftUI: モダンな宣言的UI
  • iOS 15.0+: 幅広い端末サポート

バックエンド

  • Firebase
    • Authentication: Sign in with Apple(+ Email/Password)
    • Firestore: リアルタイムデータベース
    • Cloud Storage: 画像・添付ファイル
    • Security Rules: 堅牢なアクセス制御

AI統合

  • Claude API (Anthropic)
  • Gemini API (Google)
  • OpenAI API

アーキテクチャパターン

  • MVVM: ViewModel駆動のリアクティブUI
  • Repository Pattern: データ層の抽象化
  • Dependency Injection: テスト容易性と疎結合

開発ツール

  • SwiftLint: コード品質管理
  • Firebase Emulator: ローカル開発環境
  • GitHub Actions: CI/CD
  • Danger: PR自動レビュー

📁 プロジェクト構成

shigodeki/
├── iOS/
│   ├── shigodeki/                    # メインアプリコード
│   │   ├── AI/                       # AIクライアント(Claude, Gemini, OpenAI)
│   │   ├── Components/               # 再利用可能なUIコンポーネント (74ファイル)
│   │   ├── DI/                       # 依存性注入コンテナ
│   │   ├── Extensions/               # Swift標準ライブラリ拡張
│   │   ├── Managers/                 # ビジネスロジック層 (29ファイル)
│   │   ├── Models/                   # データモデル (19ファイル)
│   │   ├── Repository/               # データアクセス層
│   │   ├── Services/                 # ドメインサービス (118ファイル)
│   │   ├── Utilities/                # ヘルパー関数・ユーティリティ
│   │   ├── ViewModels/               # UIとビジネスロジックの橋渡し
│   │   └── Views/                    # SwiftUI画面 (64ファイル)
│   ├── shigodekiTests/               # ユニットテスト
│   ├── Firebase/                     # Firebase設定
│   │   ├── Config/
│   │   │   ├── GoogleService-Info-Dev.plist
│   │   │   └── GoogleService-Info-Prod.plist
│   │   └── firestore.rules           # セキュリティルール
│   └── scripts/                      # ビルド・デプロイスクリプト
├── TidyPlanKit/                      # 写真→タスク変換 Swiftパッケージ
│   └── Sources/TidyPlanKit/
│       ├── TidyPlanner.swift         # メインAPI
│       ├── OpenAIService.swift       # Vision API統合
│       └── TidySchema.swift          # JSONスキーマ定義
├── docs/                             # 設計ドキュメント
│   ├── shigodeki-overview.puml       # システム全体図
│   ├── shigodeki-ui-flow.puml        # UI遷移図
│   └── ...
├── AGENTS.md                         # AI開発エージェント向けガイド
├── CLAUDE.md                         # 開発規約・原則
└── README.md                         # このファイル

主要な数値:

  • 📄 Swiftファイル: 約295個
  • 📊 コード行数: 約60,000行(推定)
  • 🧩 コンポーネント: 74個
  • 🔧 サービス: 118個
  • 🎨 View: 64個

🚀 開発環境セットアップ

必要要件

  • Xcode 15.0+
  • macOS 14.0+ (Sonoma以降)
  • Node.js 18+ (Firebase Tools用)
  • Firebase CLI

初回セットアップ

# 1. リポジトリをクローン
git clone https://github.com/DELAxGithub/shigodeki.git
cd shigodeki/iOS

# 2. Firebase CLIインストール
npm install -g firebase-tools
firebase login

# 3. Firebaseプロジェクト選択(開発環境)
firebase use shigodeki-dev

# 4. Xcodeでプロジェクトを開く
open shigodeki.xcodeproj

# 5. TidyPlanKitを依存関係として追加
# Xcode → File → Add Package Dependencies → Add Local...
# → TidyPlanKitフォルダを選択

# 6. ビルド実行
# Xcode → Product → Run (⌘R)

環境変数の設定

APIキーは環境変数またはKeychainで管理(コミット禁止):

// Keychainから取得
let apiKey = KeychainManager.shared.get(key: "OPENAI_API_KEY")

// または開発時は Info.plist に設定(.gitignoreで除外)

Firebase Emulatorでのローカル開発

cd iOS
firebase emulators:start

📈 開発状況

現在のフェーズ: ベータ版準備中

項目 完成度 詳細
コアアーキテクチャ 🟢 90% Firebase統合、DI、MVVM完成
機能実装 🟡 70% 主要機能は動作、細部調整中
テスト 🟡 60% ユニットテスト環境構築済み
ドキュメント 🔴 25% API/コードドキュメント不足
リリース準備 🔴 30% TestFlight未配信

✅ 完成済み機能:

  • 認証(Sign in with Apple)
  • 家族管理(招待、メンバー管理)
  • プロジェクト・フェーズ・タスク管理
  • AI統合(Claude, Gemini, OpenAI)
  • テンプレート機能
  • リアルタイム同期
  • KPIダッシュボード
  • 課金システム(In-App Purchase)
  • アクセシビリティ対応
  • 多言語対応(日本語/英語)

🔧 未完成・改善中:

  • 51個のオープンIssue
  • TestFlight配信
  • App Store申請準備
  • パフォーマンスチューニング
  • エラーハンドリングの統一

次のマイルストーン

2025年12月 - PoC開始:

  • Dela家での実証実験開始
  • 実際のユーザーフィードバック収集
  • UI/UXの問題点洗い出し

2026年1月 - ベータ版:

  • TestFlight招待リンク生成
  • 友人・知人へのベータテスト依頼
  • クリティカルバグの修正

2026年2月 - 正式リリース:

  • App Store申請
  • プレスリリース準備
  • ランディングページ公開

📚 開発ガイドライン

必読ドキュメント

開発に参加する前に、以下を熟読してください:

  1. CLAUDE.md: コーディング規約、アーキテクチャ原則
  2. AGENTS.md: AI開発エージェント向けガイド

核心的なルール

1. 単一責任の原則 + 300行ルール

  • 1ファイル = 1つの明確な責任
  • ファイルは300行以内を目標(上限)
  • 超えた場合は即座にリファクタリング

2. テスト駆動開発(TDD)

No Test, No Merge: テストのないコードはマージしない。

// ❌ Bad: テストなしでマージ
func calculateTotal(items: [Item]) -> Double {
    items.reduce(0) { $0 + $1.price }
}

// ✅ Good: テストを先に書く
func testCalculateTotal() {
    let items = [Item(price: 100), Item(price: 200)]
    XCTAssertEqual(calculateTotal(items: items), 300)
}

3. 不具合修正プロトコル

  1. 再現: 不具合を100%再現させる
  2. 失敗テスト: 不具合を検出するテストを書く
  3. 修正: テストがパスするようにコードを修正
  4. 回帰: 他のテストが壊れていないか確認
  5. 説明: コミットメッセージに原因と対策を記述

4. PR運用

  • 1 PR = 1責務
  • 差分は最大1,000行、10ファイル以内
  • rename/moveとロジック変更を混在させない

ブランチ戦略

main                # 本番環境(リリース済み)
  └─ develop        # 開発統合ブランチ
      └─ feature/95-section-picker   # 機能ブランチ(Issue番号-機能名)
      └─ bugfix/103-crash-on-save    # バグ修正

ブランチ鮮度チェック:

# mainから10コミット以上遅れていないか確認
./scripts/safe-branch.sh check

# 新しいブランチを作成
./scripts/safe-branch.sh create 95 section-picker

🗺 ロードマップ

v0.1 - PoC版(2025年12月)

目標: Dela家の実証実験で基本機能を検証

  • 基本的なプロジェクト管理
  • 家族招待・共有
  • AI提案(写真→タスク)
  • 実証実験フィードバック収集
  • 迷い箱機能の実装

v0.5 - ベータ版(2026年1月)

目標: 限定ベータテスターへの展開

  • TestFlight配信
  • オンボーディングフロー改善
  • プッシュ通知
  • パフォーマンス最適化
  • クラッシュレポート対応

v1.0 - 正式リリース(2026年2月)

目標: App Store公開

  • App Store審査通過
  • ローカライゼーション(日英)完成
  • プライバシーポリシー/利用規約
  • サポートサイト構築
  • マーケティング開始

v1.x - 継続改善

  • Watch版アプリ
  • ウィジェット対応
  • Siri Shortcuts統合
  • Webダッシュボード
  • Android版(検討中)

🤝 コントリビューション

現在はプライベート開発中のため、外部コントリビューションは受け付けていません。

開発チーム:

  • Dela (@DELAxGithub): プロダクトオーナー、iOSエンジニア
  • Claude (AI): ペアプログラミングパートナー

📄 ライセンス

Private - All Rights Reserved


📞 お問い合わせ


🙏 謝辞

このプロジェクトは、以下の方々・技術のおかげで実現しています:

  • 両親(実証実験パートナー)
  • Firebase(バックエンドインフラ)
  • Anthropic Claude(AI統合)
  • OpenAI / Google Gemini(AI統合)
  • Swift/SwiftUIコミュニティ

作成日: 2025年12月7日
最終更新: 2025年12月7日
バージョン: 0.1.0-beta

About

shigodekiアプリ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •