こんにちは、唐突ですがアプリを開発します。
アプリの名前は「朝の実(Asanomi)」にしようと思ってます。
このアプリは、「朝の豊かな時間を共有したい」という想いから生まれた、“朝専用のSNS”です。(まだ完成していませんが)
この記事では、アプリ構想からロゴ・アイコン完成までの過程、そして今後の開発計画をまとめます。
コンセプト:「朝専用SNS」
朝の実の特徴は、
・投稿できるのは “朝の限られた時間帯” のみ
・閲覧はいつでも可能
豊かな朝を過ごす人達が気軽につながれるアプリを作りたかった。
アプリ名「朝の実(Asanomi)」という名前には、2つの意味を込めています。
ひとつは、“朝しか動かないSNS” という仕組みから生まれた「朝のみ」。
もうひとつは、朝の活動を通して実る成果や気づき を表す「実(み)」。
技術スタックと方針
開発環境:Xcode + SwiftUI
データ管理:CloudKit(Firebaseを後々導入予定)
アーキテクチャ:MVVM
設計思想:最初はMVP(Minimum Viable Product)でリリース → 徐々に拡張
以前の個人開発では、AIツールにコードを任せすぎて構造を理解できないという反省がありました。
そのため今回は、「自分の手で理解しながら作る」をテーマにしています。
フォルダ構成と基本設計
Asanomi
├ Models(投稿やユーザーなど、アプリのデータ構造を定義する場所
)
├ Views(UIを表示するコードを置く場所
)
├ ViewModels(UIの操作を受けて状態管理や処理を行う場所
)
├ Repository(CloudKitなどのデータアクセス処理をまとめる場所
)
├ Resources(アプリに同梱する画像・色・フォントなどの素材を管理する場所
)
└ Support(時間判定や共通定数など、横断的な補助機能を置く場所
)
CloudKitでのデータ構造設計
CloudKit Dashboardで Post レコードタイプを定義しました。
フィールド一覧
・id:String(投稿のUUID)
・authorId:String(投稿者識別)
・text:String(投稿本文)
・createdAt:Date(並び順・制限判定)
・cheerCount:Int(いいね数)
・isDeleted:Bool(論理削除)
・clientTimeZone:String(将来的な監査用)
createdAt を Sortable に設定することで、タイムラインの高速取得が可能になります。
ロゴ・アイコンのデザイン
キーワードは「夜明け」。
「夜が明けきる直前の、空が少しずつ明るくなる時間」
「太陽が地平線から顔を出す瞬間」
をイメージできるようなデザインを考えました。
その結果、以下のロゴとアイコンになりました!
(左がロゴ、右がアイコン)

デザイン構成要素
- 太陽/実:下部の青で朝の空に上がりきっていない太陽を表現
また、朝の活動で実るものを表現 - 雲:穏やかさとゆっくり流れる時間を表現
- 背景:淡いオレンジ〜水色グラデーションで夜明け前の空気を表現
今後の開発計画(MVP完成まで)
フェーズ1:基盤構築(10月下旬〜11月上旬)
- Xcodeプロジェクト新規作成
- フォルダ構成整理
- App ID, Bundle 設定
- CloudKit Container 作成
- Post モデル定義
- CloudKitRepository(CRUD処理)作成
- 投稿時間帯ロジック仕様整理
フェーズ2:投稿機能の実装(11月中旬)
- 投稿画面UI構築
- 投稿ボタン制御
- CloudKit保存処理
- 投稿一覧キャッシュ
フェーズ3:タイムライン表示(11月下旬)
- CloudKitからデータフェッチ
- createdAt順に並び替え
- Listデザイン調整
- いいね機能(cheerCount)プロトタイプ
フェーズ4:App Store準備(12月上旬)
- スプラッシュ画面作成
- サポートページ作成
- スクリーンショット準備
- 審査提出
フェーズ5:初期リリース(12月中)
- App Store公開
- ユーザーフィードバック収集
- データ量・アクセス数分析
- v1.1改善計画策定
まとめ
「朝の実」は、朝の時間帯で利用しやすい設計の SNS です。
朝の落ち着いた環境で、気軽に情報を共有できる場を目指して、引き続き開発を進めています。
次回予告
次回は「CloudKitでSNSを作る」実践編として、以下を紹介予定です:
- Postモデルの定義
- タイムラインの表示
- 投稿時間の制約実装

