← プロジェクト一覧

ネイティブ管理者アプリ · iPhone・iPad

UP-Dream Admin

コミュニティを支える人に、必要な道具を。

登録の承認、出席管理、日々の運営のためのネイティブiPhone・iPadアプリです。机での業務は管理者Web、現場での業務はこのアプリが担うよう役割を分け、管理者専用セッション、生体認証、サーバーが決める操作権限を適用しました。

担当範囲
企画・デザイン・開発・公開を一人で担当
主な技術
  • Swift
  • SwiftUI
  • URLSession
  • Keychain

公開デモ

デモを試す

公開デモアカウントで、アプリの主な画面をご覧いただけます。

ログイン手順

  1. App Storeからアプリをインストールします。会員アプリはGoogle Playからもインストールできます。
  2. ログイン画面で「데모 계정으로 로그인」(デモアカウントでログイン)を選択します。
  3. 下記のログインIDとパスワードを入力します。
App Storeからインストール

おすすめの確認ポイント

  • 出席状況と集計を確認
  • 会員一覧と運営ダッシュボードを閲覧

公開デモアカウント

入力欄の内容を選択して、手動でコピーすることもできます。

複数の利用者で共有するサンプルデータです。他の利用者が内容を変更することがあり、変更内容が残る場合があります。個人情報や個人的な祈りの内容は入力しないでください。

システムの構成

技術解説は2026年9月17日に確認したソースに基づきます。App Store版には、一部の変更がまだ含まれていない場合があります。

  1. 01SwiftUIの管理者向けアプリ
  2. 02操作権限を確認する共通API
  3. 03PostgreSQLの業務データ

画面にはサーバーから受け取った操作権限を反映します。記録の参照・変更時には、API側でも権限を再確認します。

画面を支える設計判断

01

管理者セッションを分離する

端末内だけに保存するKeychainとエフェメラルなURLSessionを使い、セッションデータの残存を抑えています。アプリの再起動時は、永続的なオフライン管理キャッシュを復元せず、認証済みのリクエストでデータを取得し直します。

02

以前のセッションの応答を受け入れない

各リクエストにセッションの世代番号を保持します。遅れて届いた応答が以前のセッションや権限範囲に属する場合は破棄します。

03

出欠データの意味を保つ

未記入の記録を欠席と区別します。出欠の変化を分類する前に十分な観測履歴があることを確認し、編集が競合した場合も結果を明確に扱います。

UP-Dream Admin

開発でのAI活用

画面の実装と見た目を含むSwiftUIのフロントエンドにAIを活用しました。運営業務の流れと画面の要件は自分で定義しました。

アカウントや権限を扱うコードは、AIの結果をそのまま使わず自分で修正・レビューしています。この基準を設けたきっかけは、UP-Dreamのページのアカウント統合の事例にまとめています。

コードと検証

技術解説では、ネイティブのセッション処理、APIの認可、出欠の扱いを、選定したXCTestと業務ルールの検証に結び付けています。実行した検証とソースを読んで確認した範囲を区別しています。

ほかのプロジェクト