【爆速】Bunを勝手に軽量フォークした「Cruller」爆誕!Node互換性削除で大議論
投稿日時: 2026/07/23 14:40
■ 概要・編集部サマリー
1. 【背景・Ziggitフォーラムでのフォーク発表】高速 JS ランタイム Bun の Zig コードベースから、Node.js 互換レイヤーや npm クライアントを削除し、最新 Zig 0.16 へ追従させた軽量フォークが公開されました。 2. 【焦点・Node互換機能の削除とミニマリズムの相克】「Node.js パッケージが動かなければ Bun の意味が無い」という反発に対し、開発者側は「エッジ環境や Lambda でのバイナリ肥大化を防ぎ純粋な JS 実行を最速化する」と主張しています。 3. 【評価・バイナリサイズ削減とエッジコンピューティング】バイナリサイズが数十 MB から数 MB へ削減される軽量化の恩恵と、Zig 言語エコシステムの活発さに対し大きな反響と議論が交わされました。
■ Bun コードベースの最新 Zig(0.16)追従と構造クリーン化
Bun 本家が過去の特定 Zig ビルド(0.11〜0.13)に依存固定され独自のパッチで複雑化している課題に対し、常に最新の Zig 標準コンパイラで完全ビルドできるよう構成を刷新しています。
不要となったレガシーな Node.js 互換レイヤーを削ぎ落とすことで、純粋な JS / TS 実行に特化した構造が実現されました。
■ Node.js 互換レイヤー削除によるバイナリ軽量化(Bloat 排除)
Express や npm パッケージを動かすための無数の互換コードを排することで、実行バイナリサイズを数十 MB から数 MB 単位へと大幅削減するアプローチが提示されています。
AWS Lambda 等のサーバーレス環境におけるコールドスタート遅延を極限まで短縮するメリットが評価されました。
■ ミニマリズム(単一機能重視)対 汎用エコシステムの対立
「Node.js 互換性を失うと既存パッケージが動かない」という現実的批判と、「膨張した複雑性を削ぎ落として超高速実行を目指す」という低レイヤエンジニアの思想対立が議論を呼んでいます。
Zig エコシステムが持つ活発なフォーク文化と表現力の高さが改めて注目を集めています。
海外掲示板の反応・まとめ
■ Bunのフォーク『Cruller』の紹介。Node.js互換性の削除とZigネイティブでの軽量化が語られています。
BunのソースコードからNode.js互換機能とnpmクライアント削ぎ落として、最新Zig 0.16にアプデした超軽量フォーク『Cruller』出たぞ!
>>2 えっ、Node.js互換機能削ったらBunを使う理由の9割消えるじゃんw 既存のExpressとかPrismaが動かないJSランタイムで何しろって言うんだ?
>>3 違うんよ。エッジサーバーとか組込みデバイスで『純粋にJavaScript/TypeScriptだけを最速で動かしたい』って用途なら、Nodeの遺物(node:fsの互換レイヤー等)はただのバイナリ肥大化(Bloat)なんだよね。
>>4 Bun本家も最初は『高速なJS実行』を目指してたのに、結局npmパッケージ動かすためにNodeの再現コード何十万行も書いてスパゲッティ化しちゃったからな。
バイナリサイズが数十MBから数MBに縮小するのは魅力的だから、AWS Lambdaのコールドスタート対策として面白い試みだわ。
こうやって有志が自由にフォークして実験できるのがZigエコシステムの楽しさだな。
Zig 0.16の最新コンパイラでビルドできるの気持ち良すぎる。
npm installも使えないのは流石にやりすぎ。
V8やJavaScriptCoreに依存しない独自エンジンの夢。
海外のコミュニティでも『ミニマリズムの極致だ』って低レイヤエンジニア達が大歓喜してるぞ。
本家Jarredがスター付けてそうなプロジェクト。
DenoとBunとCrullerで軽量化合戦が始まる。
フォーク文化こそがオープンソースの健全さの証。
機能性かミニマリズムか。用途に応じたランタイム選択の幅が広がるのは歓迎だな。