個人開発者向けのサービスの開発記録 #44 20240229

tyshgc
·

本日の作業

  • 🚴 分報に関する設計・実装

    • 🚴 UseCase Hooksと結合実装

  • Domain EventとPrismaの実装

  • Supabaseの設定と開通

    • Supabase Auth

    • Supabase Database

  • 🛑 🚴 イベントストーミングとサービスブループリンの融合についてzennにまとめる(休日にやる)

その他、メモ

  • Feature Sliced DesignでUseCaseをどこに置くか、またdomain層がpackages/domainに集約されているのでそれとどう連携するかを考え中。

    • 当初はfeaturesにUseCase Hooksを置いて適宜UseCase HooksからRepositoryを通して必要な集約を生成したり永続化し、それをentititesにpropsとして渡し、entities内のCompound PatternのルートコンポーネントからContextを通して伝播させようかと思っていた。

    • しかしRemixの文脈だとloaderとactionでSSRの初期状態やmutationを行う思想にFSDをどう対応させれば良いかわからず。

    • RemixのroutesがFSDで言うpagesでRemixのloaderなどはroutesにしか生やせない(actionはForm要素があればどうにかなりそうだけど、actionのコードはroutesにないとダメぽい)。

    • つまり、その下にwidgets/features/entittiesが含まれるFSDの思想ではloaderやactionをfeaturesやentititesに持たせることが事実上できない。

    • SSRで初期値をpagesからfeaturesまたはentittiesと連携しているcontextを用意しproviderから伝播させる方法が最もコード管理上も設計上もわかりやすくなりそうだけど、FSDの思想にはあってないのでは?と。

    • それを踏まえ、FSDのDiscordに投げかけてみたけど1日経過したがお返事なし。

← #43 #45 →

@tyshgc
デザインファーム及びスタートアップ(上場)などを経てフリーランスとして、様々なスタートアップや大手企業の新規事業の立ち上げ期における事業設計・アプリケーションの設計・開発、サービスのUX分析とデザインとエンジニアリングの両軸でお手伝いさせていただいています。 現在、個人開発者向けの支援サービスを個人開発中。 X Account: @tyshgc