>_tech-draft
Firebaseのアイコン
Firebase
動画公開日
タイトル

Building a multi-user productivity app | Code, Commit, Deploy, Repeat (S1E1)

再生時間

1時間 30分 1秒

「Make It So」実践開発!FirebaseとToDoアプリで学ぶモバイル開発の第一歩

ポイント

  • 「Make It So」プロジェクトのモバイルアプリ開発が本格化し、FirebaseとToDoアプリで実践的な開発ステップを紹介します。
  • 具体的なプロダクト要求仕様書(PRD)の策定、Cloud Firestoreを利用したデータモデルの定義過程を解説。
  • プラットフォームネイティブなUIを目指し、iOS版コーディングから着手する開発の初期段階と今後の展望を学べます。

はじめに:「Make It So」プロジェクトの新たなフェーズへ

皆さん、こんにちは!本記事では、YouTubeのライブストリーム「After Hours」で進行中の「Make It So」アプリ開発プロジェクトの最新動向についてご紹介します。これまでの実験的なアプローチから一歩進み、今回は具体的なモバイルアプリケーション開発の「リアルワールドシナリオ」に焦点を当てます。

「After Hours」は、PeterとNoiが進行する魅力的なライブストリームで、過去にはいくつかのエピソードが公開されています。昨年12月のエピソードでは、「Make It So」というアプリを共同で構築するアイデアが生まれました。当時は、Stageというツールを使って古き良きUIを試作したり、GeminiにPRD(プロダクト要求仕様書)を生成させたり、さらにAnti-Gravityを用いてWeb版アプリを迅速に開発したりと、様々な実験が行われました。

そして今回、Peter(Apple開発者)とMarina(Android開発者)の専門知識を活かし、モバイル版アプリの開発へと移行します。

モバイルアプリ開発の具体的なステップ

実際のアプリ開発を進めるにあたり、以下のステップが必要であると議論されました。

  1. PRDの本格的な策定: 実験的なものだけでなく、実際の開発に耐えうるPRDを構築する必要があります。
  2. データモデルの合意: データの保存に関する基本的な構造を決定します。
  3. コーディングの開始: 今回はiOS版の開発から着手し、進捗に応じて次回以降でAndroid版に取り組む予定です。

デザインアプローチの再考:ブルータリズムからプラットフォームネイティブへ

以前のライブストリームでは、Noi氏のアイデアにより「ブルータリズムデザイン」という非常にユニークで風変わりなUIデザインが採用されました。

しかし、今回のモバイルアプリ開発では、それぞれのプラットフォーム(iOS/Android)に「なじむ」、より標準的なUIを目指すことになりました。これは、ユーザーが普段から使い慣れているリマインダーアプリやToDoリストアプリのような、プラットフォーム固有の体験を提供するためです。

デザインツールの「Stitch」の活用についても議論されました。Stitchは特定の画面や単一機能のUIデザインには有効であるものの、包括的なPRD全体を生成するにはあまり効果的ではないという経験が共有されました。Stitchは「雰囲気」や「UI」に重点を置いているため、機能全体を定義するPRDとは目的が異なるためです。

最終的に、まずはPRDを策定し、その後コーディングエージェントにそのPRDを投入して、どのような結果が得られるかを見るアプローチが提案されました。

プロダクト要求仕様書(PRD)の策定:アプリのコア機能を定義する

アプリの具体的な開発に着手する前に、プロダクト要求仕様書(PRD: Product Requirement Document)を詳細に定義しました。これは、「何を構築したいのか」を明確にするための重要なドキュメントです。

アプリの目標と主要機能

  • 目標: 軽量でレスポンシブな生産性向上アプリケーションを構築し、ユーザーが日々のタスクを管理できるようにすること。
  • 主要機能(CRUD操作):
    • C (Create): ToDoリストの作成、新しいタスクアイテムの追加。
    • R (Read): 既存のタスクアイテムの表示。
    • U (Update): タスクアイテムの編集(例: 完了状態への変更、内容の修正)。
    • D (Delete): 不要になったタスクアイテムの削除。

データストレージと技術スタック

  • データストレージ: Cloud Firestore を使用します。これはFirebaseプロジェクトの一部として利用されます。
  • Firebaseプロジェクト: このアプリはFirebaseを基盤とするプロジェクトとして構築されます。

今後の展望

今回のPRDでは、タスクアイテムの基本的なCRUD機能に焦点を当てています。セキュリティや認証といった高度な機能は、今後のイテレーション(開発段階)で追加していく予定です。

なお、PRDの名称として「Firebase Taskmaster」という案も出ましたが、これまでのプロジェクト名「Make It So」との関連性についても言及されました。

データモデルの定義:タスクアイテムに必要なフィールド

Firebase Firestoreでデータを保存する際の基本的な構造を定義しました。ToDoアプリの各タスクアイテムには、以下のフィールド(属性)が必要となります。

  • Status(ステータス): タスクの完了状態などを表します。
  • Title(タイトル): タスクの具体的な内容です。
  • Priority(優先度): タスクの重要度を示すフィールドです。
  • Due Date(期日): タスクの期限を示す日付です。この期日は、UI上でユーザーに期日が迫っているタスクを視覚的に知らせるために活用される予定です。

これらのフィールドを定義することで、効率的かつ柔軟にタスクデータを管理できるようになります。

まとめ:いよいよ本格的な開発へ

本ライブストリームでは、「Make It So」モバイルアプリ開発に向けた重要な初期ステップが完了しました。PRDの策定とデータモデルの定義により、アプリのビジョンと技術的な基盤が明確になりました。

次に控えるのは、いよいよiOSでのコーディング開始です。プラットフォームに最適化されたユーザー体験と、Firebaseの強力なバックエンドを活用した「Make It So」アプリの実現に向けて、今後の進展にご期待ください。


参考動画

https://www.youtube.com/watch?v=VqnGUC-OTmY