4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

firestoreの設計書フォーマットのご紹介

Posted at

こんにちは。virapture株式会社でCEOしながらラグナロク株式会社でもCKOとして働いている@mogmetです。
mogmet.jpg
リリースが立て込んでなかなかアウトプットができてなかったのですが、本日から再開しようと思います!
本日はfirestoreの設計書を書くときに私が使っているフォーマットの紹介です。

前提

firestoreの設計書として必要な要素としては、CollectionのPATH情報、フィールドの要素についてが分かれば十分と考えています。
リポジトリのREADME.mdでマークダウンで書く方法もありますが、保守しづらい部分もあったのでconfluenceなどのドキュメント管理ツールで作ることをお勧めします。

設計書フォーマットの紹介

今回はチャットサービスを考えた場合のサービスで設計をしてみます。
では早速紹介します。

CleanShot 2023-03-29 at 07.52.33.png

下記にコピペ用のフォーマットを記載しておきます。

## 基本構造
### users/{uid}

ユーザ情報をまとめる
uidはFirebaseAuthenticationのuidと同等

|Field|Type|Description|Sample|
|---|---|---|---|
|createdAt|Timestamp|作成日時|1987-12-01 00:00:00|
|username|string|ユーザ名|もぐめっと|

### chatRooms/{chatRoomId}

チャット部屋一覧。
lastChatに関してはCloudFunctionsで自動的に更新される。

|Field|Type|Description|Sample|
|---|---|---|---|
|createdAt|Timestamp|作成日時|1987-12-01 00:00:00|
|updatedAt|Timestamp|作成日時|1987-12-01 00:00:00|
|title|string|部屋名|もぐめっとの部屋|
|lastChat|string?|最後のチャット|犯人はヤス...|

### chatRooms/{chatRoomId}/chats/{chatId}

チャット部屋に送信されるチャット情報。

|Field|Type|Description|Sample|
|---|---|---|---|
|createdAt|Timestamp|作成日時|1987-12-01 00:00:00|
|chat|string|送信されたチャット|犯人はヤス...|


## ビジネスプラン周りの構造

...

見出しをPathにすることで目次を表示したときに一覧してみやすくなるのでとてもおすすめです。
Pathに関してはDocument IDに対して特筆があれば記載しています。

コレクションの説明について、さらに実際の画像なども一緒に乗せるとなおわかりやすい設計書になると思います!
また、ある程度コレクションに塊の意味があれば別途H2で分けるとよりわかりやすくなります。(課金周りの構造をまとめるなど)

まとめ

Firestoreの設計書のテンプレートになるようなフォーマットを紹介いたしました。
是非新規サービスを作るときの参考にしてもらえたら幸いです。

最後に、スノボの楽しく滑るコツを掴める cotsume というアプリを作ってます!よかったらDLしてみてね!

また、ワンナイト人狼オンラインというゲームを作ってます!よかったら遊んでね!

他にもCameconOffcha、問い合わせ対応が簡単にできるCSmart、フリーランスのコミュニティのNextFreelanceといったサービスも作ってるのでよかったら使ってね!

また、チームビルディングや技術顧問、Firebaseの設計やアドバイスといったお話も受け付けてますので御用の方は弊社までお問い合わせください。

ラグナロクでもエンジニアやデザイナーのメンバーを募集しています!!楽しくぶち上げたい人はぜひお話ししましょう!!

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?