本気のTodoアプリ
技術構成図
理解が浅くて図には書けないですううう
- S3
- RDB MySQL
- Redis
- Amplify
頑張ったところ
S3への画像アップロード
- フロントエンドから直接S3へ画像をアップロードするために、署名付きURLをバックエンドで作成し、それを使用して画像をアップロードしている
- アップロードした画像はCloudFrontを通して閲覧可能にしている
dnd(まる)
DnDは考えることが多くて難しかった
単純なDnDであれば簡単であるが、今回のような実装をやろうと思うと、複雑なコードになる。
ドラック判定とクリック判定を分ける
4pxドラックするとドラック可能になり、それ以外はクリックとして扱うようにして、
ドラックとクリックを両立できるようにした。
パスワードのハッシュ化(なぎ)
- ハッシュ化と変換後の照合ができるモジュールを用いて実装した
- bcrypt、楽
こだわりポイント
tRPC
- zodを使用してschemaを定義し、それを使用してフロントもバックもAPIを作ったり叩いたりしているので非常に型安全で開発がしやすかった
認証まわり
- SignUpには、情報を入力後、入力したメールアドレスに本登録URLが送られてくるよくあるあれを実装
- ↑ を採用することによって「パスワードを忘れた人」のよくあるメールアドレスにパスワードリセット用リンクを発行するあれを実装できた
例に漏れずCI番人(安達)