Foldkit؛ فریمورک فرانتاندی که روی «درستی» بنا شده
خلاصهٔ کاملتر
Foldkit یه فریمورک فرانتاند تازه (هنوز در مرحلهی بتا) است که شعارش «فریمورکی برای درستی» (correctness) است. این فریمورک روی کتابخانهی Effect ساخته شده، معماریاش شبیه Elm است و کاملاً با TypeScript نوشته شده.
استدلال اصلی تیم Foldkit اینه که React، Vue، Svelte و Solid مسئلهی رندر را حل میکنن اما معماری برنامه را به دست خودت میسپارن؛ در حالی که Foldkit خودِ معماری را در اختیارت میذاره تا روی دامنهی کاریات تمرکز کنی نه روی لولهکشی پایه.
سه ستون اصلی این طراحی اینهان: اول، وضعیت قابلپیشبینی؛ کل وضعیت برنامه در یک مدل تغییرناپذیر (immutable) نگه داشته میشه و هر تغییر از یک تابع update واحد عبور میکنه، بدون mutation پنهان یا closureهای کهنه. دوم، افکتهای صریح؛ side effectها بهجای فراخوانیهای دستوری پراکنده در هندلرها، مقادیریاند که از update برگردونده میشن و runtime تصمیم میگیره کِی و چطور اجراشون کنه. سوم، مقیاسپذیری بدون پیچیدگی؛ یه برنامهی ۵۰ فایلی همون الگوهای یه برنامهی ۵ فایلی رو دنبال میکنه.
چون Foldkit روی Effect بنا شده، هر برنامهی Foldkit در واقع یه Effect است، کل وضعیت یه Schema واحده و side effectها بهصورت Effectهایی مدل میشن که هرگز شکست نمیخورن. اگه قبلاً با Effect کار کردی، Foldkit برات طبیعی به نظر میرسه و اگه نه، راه خوبیه برای یادگیریاش. نصبش هم با دستور npx create-foldkit-app@latest انجام میشه.
نکات کلیدی:
- Foldkit یه فریمورک فرانتاند تازه با تمرکز روی «درستی» و معماری شبیه Elm است
- روی کتابخانهی Effect و کاملاً با TypeScript ساخته شده
- کل وضعیت در یک مدل تغییرناپذیر است و از یک تابع update واحد عبور میکنه
- side effectها مقادیریاند که برگردونده میشن، نه فراخوانیهای دستوری
- هنوز در مرحلهی بتا است




