EXE؛ کل اپ فولاستک رو تو یه فایل اجرایی
خلاصهٔ کاملتر
EXE یه ابزار بیلده که هدفش اینه کل اپ فولاستک وبت رو بهشکل یه فایل اجرایی (binary) تکی و بدون هیچ وابستگی زماناجرا تحویل بده. تو توضیحات پروژه اومده که برخلاف بیلدهای استاتیک که قابلیتهای سرور رو از اپ میگیرن، EXE همهٔ امکانات سمت سرور فریمورک رو حفظ میکنه؛ چیزهایی مثل SSR، اندپوینتهای API، میانافزار سرور و احراز هویت سمت سرور.
به گفتهٔ سازنده، راههای سنتی هرکدوم یه ایرادی دارن: ترکیب بیلد SPA با Rust یا Go قابلیتهای سرور فریمورک فرانت رو از دست میده، اپهای دسکتاپ رو نمیشه روی وب دیپلوی کرد، و داکر هم نیاز به نصب داکر و بالاآوردن کانتینر داره. EXE میخواد بدون این دردسرها یه خروجی چندسکویی بده که هم لوکال اجرا شه هم روی یه ماشین ابری کوچیک.
نویسنده میگه این ابزار مخصوصاً برای ابزارهای متنباز که کاربر بخواد بدون داکر و Node اجراشون کنه، نرمافزارهای تجاری که بهشکل خرید یکباره برای سلفهاست فروخته میشن، اپهای حریمخصوصیمحور و دموهای «قبل از خرید امتحان کن» بهدرد میخوره. نمونههاش هم اپهای چت هوش مصنوعی، ابزار مدیریت پروژه، ویرایشگر عکس و آنالیتیکس وب ـه.
راهاندازیش با SvelteKit سادهست؛ فقط برای ساختن فایل اجرایی باید Bun روی سیستمت نصب باشه (نه برای اجراش). بعد از نصب پکیج، آداپتر رو تو کانفیگ Svelte ست میکنی:
// svelte.config.js
import adapter from "@jesterkit/exe-sveltekit";
export default {
kit: {
adapter: adapter({
binaryName: "my-app",
}),
},
};بعدش با npm run build خروجی رو میسازی و باینری رو مستقیم اجرا میکنی؛ اپ با همهٔ قابلیتهای سرور SvelteKit روی localhost بالا میاد. یه امتیاز اضافهش هم اینه که اگه هدف رو linux-x64 بذاری، خودش یه Dockerfile میسازه که با CLI سرویس Fly.io میتونی با یه دستور سلفهاستش کنی. پروژه با لایسنس MIT منتشر شده.
نکات کلیدی:
- EXE اپ فولاستک رو یه فایل اجرایی تکی و بدون وابستگی زماناجرا میکنه.
- برخلاف بیلد استاتیک، همهٔ قابلیتهای سرور مثل SSR، API و احراز هویت حفظ میشن.
- برای ساختن باینری به Bun نیاز داره؛ SvelteKit کامل و Nuxt و TanStack آزمایشی پشتیبانی میشن.
- خروجی چندسکویی ـه و برای linux-x64 خودکار یه Dockerfile میسازه.




