サービス開発作業をする上で毎回repositoryを設計する作業にだいぶ工数が取られると思い、今流行ってる技術を利用したモノレポを改めて整備しました。repositoryの設計は凝り始めるとキリがない。。。
作ったもの: https://github.com/pigooosuke/mymonorepo
言語を統一して開発できるようにTypescriptだけ構成されてます。(実務ではあまり使わない言語なのに。。。)
CI/CD, Iacなどの要素は追加していないです。
よくあるTodoアプリだけを実装してあります。
React hooksによるState管理versionと、DBをGraphQL連携管理versionの2種類をサンプルとして載せてあります。
GraphQLを実際に実装したのは初めてでしたが、GraphQLのエコシステムがかなり整備されている印象です。
https://graphql.org/code/#javascript-tools
また、Mutation(データ更新)した後に、データの再取得する処理をcallback的に登録できる優しい設計になっていて感動しました。
https://www.apollographql.com/docs/react/data/refetching/
N+1問題に対応させるDataLoader実装も後で挑戦してみたいですね。