الکتروبان ۲.۰: اپ دسکتاپ در حد یک مگابایت
خلاصهٔ کاملتر
الکتروبان یه فریمورک برای ساخت اپ دسکتاپ چندسکوییه و حالا نسخهٔ ۲.۰ منتشر شده. ایدهٔ اصلیش اینه که به جای بستهبندی یه کروم کامل داخل اپ، از وبویو خود سیستمعامل استفاده کنه. نتیجهش تو اعداد خود پروژه: دانلود فشردهٔ hello world روی مک ARM64 حدود ۱.۲۸ مگابایت برای پروسهٔ اصلی نیتیو و حدود ۱۵ مگابایت با رانتایم Cottontail، در برابر حدود ۸۵ مگابایت یه اپ معمولی الکترون. اگه بخوای همهجا دقیقاً یه موتور داشته باشی، بستهبندی اختیاری CEF هم هست.
نکتهٔ دوم، تعدد زبانهاست. پیشفرض، پروسهٔ اصلی با TypeScript نوشته میشه، ولی Zig و Rust و Go و Odin هم پشتیبانی میشن؛ همون core، همون ابزار بیلد، همون بستهبندی. ساختن پنجره تو نسخهٔ TypeScript این شکلیه:
import { BrowserWindow } from "electrobun/main";
new BrowserWindow({
title: "Hello Electrobun",
url: "views://mainview/index.html",
frame: { width: 800, height: 600 },
});تیم میگه نمونههای هر زبان تو مستندات کاملتر اومده.
بخش «چی تو ۲.۰ جدیده» سه تا اسم تازه داره. Hutch یه CLI واحد برای پکیج و اسکریپت و بیلد و ریلیزه که جای npm و Bun و CLI قدیمی الکتروبان رو میگیره. Cottontail رانتایم TypeScript خودشونه که با Zig روی JavaScriptCore ساخته شده و با Node و Bun سازگاره ولی کوچیکتره. Warren هم یه فریمورک واکنشگرای ریزدانهست که از SolidJS الهام گرفته و میتونه مستقیم روی سطحهای GPU نیتیو بنویسه.
چیزهایی که از قبل تو جعبه هست هم کم نیست. آپدیت تفاضلی با zig-bsdiff که به گفتهٔ تیم میتونه تا ۴ کیلوبایت کوچیک بشه و به سرور آپدیت اختصاصی نیاز نداره (یه S3 یا R2 یا حتی هاست فایل استاتیک کافیه، با fallback دانلود کامل). ریلیزها به شکل بستهٔ خوداستخراج Zstandard میان، امضا و notarization بخشی از بیلد ریلیزه، و دو کانال جدای canary و production از روز اول هست. آداپتور three.js و Babylon هم برای پنجرههای GPU نیتیو داره.
حواست باشه این متن صفحهٔ معرفی خود پروژهست، نه یه بررسی مستقل؛ پس اعداد حجم و ادعاهای عملکرد از طرف سازندهست. در عوض یه نشونهٔ عملی هم هست: تیم میگه محصول دسکتاپ خودشون، Dash، سر تا ته روی الکتروبان ۲.۰ ساخته شده، با Hutch بیلد میشه، روی Cottontail اجرا میشه و آپدیتهاش به صورت diff باینری میره بیرون. برای شروع هم دستور init یه انتخابگر قالب با ۳۰ تمپلیت باز میکنه.
نکات کلیدی:
- دانلود فشردهٔ hello world روی مک ARM64: حدود ۱.۲۸ مگابایت با پروسهٔ نیتیو و حدود ۱۵ مگابایت با Cottontail، مقابل حدود ۸۵ مگابایت الکترون.
- پروسهٔ اصلی رو میشه با TypeScript، Zig، Rust، Go یا Odin نوشت.
- Hutch یه CLI واحده که جای npm، Bun و CLI قبلی الکتروبان رو میگیره.
- Cottontail رانتایم TypeScript خودشونه، ساختهشده با Zig روی JavaScriptCore.
- آپدیت تفاضلی با zig-bsdiff تا حد ۴ کیلوبایت، بدون نیاز به سرور آپدیت اختصاصی.
- دستور init سی تا تمپلیت آماده داره، از پوستهٔ فریمورکهای وب تا شبیهسازیهای WGPU.




