複数のプラットフォームにわたるロール管理を自動化するNext.jsアプリケーションです。Discord、VRChat、GitHubのロールとメンバーシップを統一的に管理し、条件に基づいた自動ロール付与を実現します。
- Discord: Botトークンを使用したサーバーロール管理
- VRChat: グループメンバーとロールの管理
- GitHub: OrganizationとTeamメンバーシップの管理
- 複数のプロジェクトやチームを独立したネームスペースで管理
- ネームスペースごとの権限とアクセス制御
- オーナー・管理者・メンバーの階層的な権限管理
- メンバーをタグで分類・管理
- 色分けによる視覚的な識別
- タグベースでの一括操作とフィルタリング
- 条件ベースのマッピングルール設定
- タグの組み合わせに基づく自動ロール付与
- 複数プラットフォーム間でのロール同期
- ユーザー名やIDでのメンバー検索
- プラットフォーム間でのアカウント紐づけ
- 外部サービスアカウントの統合管理
- 全プラットフォームのメンバー状況を一元表示
- 招待リンクの生成と管理
- NextAuth.jsによる認証システム
- サービスアカウント別の認証情報管理
- 2FA対応(VRChat TOTP)
- フレームワーク: Next.js 14 (App Router)
- 認証: NextAuth.js with Discord Provider
- データベース: MySQL with Prisma ORM
- UI: Tailwind CSS + Radix UI
- 状態管理: TanStack Query (React Query)
- 型安全性: TypeScript + Zod
- コード品質: Biome (Formatter & Linter)
src/
├── app/ # Next.js App Router
│ ├── api/ # API Routes
│ └── ns/[nsId]/ # ネームスペース別UI
├── lib/ # 外部サービス統合
│ ├── discord/ # Discord API
│ ├── vrchat/ # VRChat API
│ └── github/ # GitHub API
├── components/ # 再利用可能なUIコンポーネント
├── types/ # TypeScript型定義
└── requests/ # API クライアント関数