Zen Tonic | Notion x 習慣化アプリケーション
https://github.com/un-null/zen-tonic
https://github.com/un-null/zen-tonic-lp
<aside> <img src="/icons/attachment_gray.svg" alt="/icons/attachment_gray.svg" width="40px" /> …
- Next.js
- Mantine
はじめは shadcn/ui や tremor を検討したが、コンポーネントが不足してしまったため、Mantine に落ち着いた
パフォーマンスの観点から css module が推奨されていることを後ほど気づき、pure css が久々だったのもあり、リプレイスに苦労した。今も苦労している。
- Turso
当初は PlanetScale で構築していたが、制作中に無料プランが廃止されてしまったため、急遽移行
採用理由は、D1, Astro DB など SQLite ベースの DB サービスの勢いがすごかったため採用した
- Prisma
- Clerk
当初 NextAuth を採用していたのだが、Prisma との連携面での問題を解決できず、Clerk を採用した。
初めて触ったが、使いやすくて良き。
個人的には webhook が腹落ちしておらず、Prisma が Edge に対応したタイミングで NextAuth にリプレイスしようか検討中
Figma
初めて触った。
実際の開発だと、ある程度出来上がったデザインをもとに開発を進めるため、擬似的でも経験を得たかった
- Vercel
</aside>
当初 1 ヶ月ほどで計画していたが、下記問題に遭遇し、結果 3 ヶ月くらいかかった。
そもそもの考慮不足
ある程度機能は考えていたものの、いざ作ると考慮不足が多く、意欲が低下していった
最初の設計段階で、MVP の仕様をもっと検討するべきだった
Prisma が Edge で使えず、 NextAuth との連携面で苦戦
Prisma Accelerate の手段も検討したが Prisma もそのうち Edge に対応するとのことで、見送った
結果 NextAuth を諦めたが、Drizzle 等の別の ORM を検討しても良かったと思っている
Figma 難しすぎ
そもそも Figma に慣れていないので、早く開発したいのに!という意欲が削がれ、精神的にもキツかった
PlanetScale の無料プラン廃止
これに関しては、中盤ごろに突如発表されたので、精神的にキツかった
仕様の考慮不足がとんでもなく、この点さえ改善できれば、1 ヶ月もあれば作れた。時間は無駄にしたがいい経験になった。
リファクタの余地が大量にあるので、継続的にキャッチアップ & 開発をしつつ、知見を深めたい