😊

Crowi 2.0 開発日記 #4

に公開

前回の続き

https://zenn.dev/sotarok/articles/ac22a34571fd2b

TL;DR

  • Claude Code に乗り換えた
  • サーバービルドの修正
  • node 16 → 20化
    • それに伴い、色々パッケージのupgradeが可能になったのでその対応!!

Codebase changes

前回~ 6ef7b9cba792b72bf391a6d52b042d623dc35146

https://github.com/crowi/crowi/compare/5b96932295476dca97907da8163a208854b610b1...dev2

Claude Code

前回から1ヶ月ちょっとの間に、AI開発も大きな動きがあって、もはやCursorでは無くなってしまった。Claude CodeのAgentの挙動が非常に優秀。
というわけで /init して CLAUDE.md を生成。

dist の path を通す

build は通って、ts-node での dev もできるのだが、npm start できない

前回、build通すところまでやったのだけど、その後 npm start の path が転けてたのでこの辺りを修正した

  • module-alias を使って prod は dist にした
  • 生成先を dist/src じゃなくて dist/ になるように rootDir を調整

node 16 → 18 → 20

まあこれは単純に設定を色々変更しただけ。
記述的なところで問題は出ないはず。
ただ、ランタイムで不具合が出るかもしれないけれど、一旦はビルドが通れば良いということにする。

  • bodyParser が組み込まれて依存がなくなった

Upgrade TypeScript → 5.8

  • ガンガン行こうぜ

jest の upgrade

  • なんか upgrade しました
  • ただ、テストを通そうとすると修正箇所が多いのでいったん package の upgrade を優先

redis client の upgrade

  • config の設定方法などが変わっていたところの修正

mongoose v5 → v6

  • 一旦刻んでいっている...
  • v6 でも結構変更点が多いので1つ1つ対応している

まとめ

  • Claude Code がすげえ
  • 引き続きライブラリのバージョンアップを続ける
  • フロントエンドから動作確認できる状況を作る

Discord

引き続き、Discord は興味本位でも、冷やかしでも、アドバイスでも、お手伝いでも大歓迎ですので、ぜひ遊びに来てください!

https://discord.gg/jnWzJeu

Discussion