Skip to content

refactor: use Vite to build instead of webpack

Resolve #6845 (closed)
Resolve #8525 (closed)
Close #6901 (closed)

Requires #7667 (because changes of Service Worker build sequense is conflicted)

What

クライアントのビルドツールをWebpackからViteにします。

Why

  • ビルドの軽量・高速化
  • 開発者ツールがメモリを使いまくるのを解消

Additional info (optional)

See also https://github.com/tamaina/misskey/pull/67

  • Firefox, ChromiumにおいてFOUCが発生する。iOS Safariでは発生しない。ViteのDiscordで質問してみたけど反応がなかった。根拠はないがユーザーの半分はSafariでアクセスしている気がするので、とりあえず直さなくても大丈夫だと私は思った。
    なお、cssCodeSplit: falseにするとプロジェクトすべてのCSSを統合した260KiB余りのcssが生成される。
  • chartjs-plugin-gradient がなぜかmain指定がアカンと言われる。node-resolveとかcommonjsのプラグインを試してみてもダメ。 https://github.com/tamaina/misskey/blob/73d138d8b0260e048365482dff85d4e833e14f89/packages/client/src/components/chart.vue#L32
  • requireを使うのが面倒そうだったのでimportを使うようにした

Merge request reports