1
0
2025-06-01 21:39:53 +09:00
..
2025-06-01 21:39:53 +09:00
2025-06-01 21:39:53 +09:00
2025-06-01 21:39:53 +09:00

ai.card iOS App

atprotoベースのカードゲーム「ai.card」のiOSアプリです。

特徴

  • atproto統合: 分散型認証とデータ主権
  • リッチなアニメーション: ガチャの迫力ある演出
  • カードコレクション: 美しいカード表示とフィルタリング
  • ユニークカードシステム: 世界で一人だけが所有できるカード

アーキテクチャ

MVVM + Combine

Views/
├── LoginView          # atprotoログイン
├── GachaView          # ガチャ画面
├── CollectionView     # コレクション画面
├── ProfileView        # プロフィール画面
├── CardView           # カード表示コンポーネント
└── GachaAnimationView # ガチャアニメーション

Services/
├── APIClient          # REST API通信
├── AuthManager        # 認証管理
└── CardManager        # カード管理

Models/
├── Card               # カードデータモデル
└── User               # ユーザーデータモデル

技術スタック

  • UI: SwiftUI
  • データフロー: Combine
  • ネットワーク: URLSession
  • 認証: atproto (JWT)
  • 最小対応OS: iOS 16.0

セットアップ

1. Xcodeプロジェクトを開く

cd ios/AiCard
open AiCard.xcodeproj

2. API設定

開発環境では自動的に localhost:8000 に接続します。 本番環境では api.card.syui.ai に接続します。

3. ビルド & 実行

  • シミュレーターまたは実機でビルド
  • atprotoアカウントでログイン
  • ガチャを引いてカードを集める

主要機能

認証

  • atproto DIDベース認証
  • アプリパスワード使用
  • 自動セッション管理

ガチャシステム

  • 通常ガチャ(無料)
  • プレミアムガチャ(確率アップ)
  • レアリティ別アニメーション
  • ユニークカード対応

カードコレクション

  • グリッド表示
  • 検索機能
  • レアリティフィルタ
  • 詳細表示

プロフィール

  • ユーザー情報表示
  • コレクション統計
  • データ同期機能

カードシステム

レアリティ

  • ノーマル: 基本カード
  • レア: 少し珍しいカード
  • スーパーレア: とても珍しいカード
  • キラ: 光る演出付きカード0.1%
  • ユニーク: 世界で一人だけ0.0001%

視覚効果

  • レアリティ別グラデーション
  • キラカードのスパークル効果
  • ユニークカードのオーラ効果
  • 3Dフリップアニメーション

今後の実装予定

  • Push通知
  • カード交換機能
  • AI.verse連携
  • ダークモード対応
  • iPad最適化
  • ウィジェット対応

注意事項

  • iOS 16.0以上が必要
  • atprotoアカウントが必要
  • インターネット接続が必要