Frontmatter: ابزار build-time برای اتصال Astro به بکاند
خلاصهٔ کاملتر
Frontmatter یه مجموعه ابزار build-time هست که برای کسایی طراحی شده که UI رو با Astro میسازن ولی باید اون رو به یه بکاند جداگانه وصل کنن. ایده اصلیش اینه که توسعهدهنده UI رو در Astro نگه میداره و Frontmatter کار تبدیل و اتصال به بکاند رو خودش انجام میده — بدون اینکه مجبور بشی چیزی رو از نو بنویسی یا یه لایه رانتایم اضافه کنی.
پروژه از سه بخش اصلی تشکیل شده. اولی Core هست که هسته دادهایه. این ابزار پروژه Astro تو رو اسکن میکنه و یه JSON IR (Intermediate Representation) پایدار خروجی میده. این JSON پایهای هست که بقیه ابزارها روش بنا میشن و در اصل همون «قرارداد داده» بین فرانتاند و بکاند حساب میشه. Core کاملاً رایگان و MIT هست.
ابزار دوم Solo نام داره و با یه خرید یکباره ۴۹ دلاری در دسترسه. این ابزار از پروژه Astro یه «render pack» تولید میکنه که شامل قالبهای Twig یا PHP خالصه. یعنی میتونی خروجی UI فرانتاندت رو مستقیماً تو بکاند PHP یا پلتفرمهایی مثل Craft CMS یا Symfony استفاده کنی — بدون هیچ بازنویسی.
ابزار سوم Studio هنوز در راهه و به زودی معرفی میشه. این ابزار قراره یه لایه ویرایشپذیر رو به سایت Astro اضافه کنه؛ طوری که لایوت در کد بمونه ولی محتوا به داده تبدیل بشه. در واقع یه CMS سبک و opinionated برای Astro محسوب میشه.
مدل قیمتگذاری Frontmatter هم جالبه. خرید یکبارهست، هیچ اشتراک ماهانهای نداره و سرویس مدیریتشدهای هم ارائه نمیده. یعنی integration با بکاند کاملاً مسئولیت خود توسعهدهندهست — Frontmatter فقط ابزار رو میده، نه هاستینگ یا پلتفرم.
این پروژه توسط Alexandre Desane ساخته شده و رویکردش برای تیمهایی که Astro رو برای UI انتخاب کردن ولی بکاندشون PHP یا Twig هست، میتونه خیلی کاربردی باشه. بهجای اینکه مجبور بشن دو کدبیس جداگانه نگه دارن یا یه لایه میانی اضافه کنن، Frontmatter همه چیز رو در build time حل میکنه.
نکات کلیدی:
- Core رایگان و MIT هست و یه JSON IR پایدار از پروژه Astro خروجی میده
- ابزار Solo با ۴۹ دلار خرید یکباره، قالبهای Twig و PHP خالص تولید میکنه
- هیچ اشتراک ماهانه یا سرویس مدیریتشدهای وجود نداره
- Studio هنوز در راهه و قراره لایه ویرایش محتوا رو بدون تغییر در لایوت کد اضافه کنه
- integration با بکاند کاملاً مسئولیت توسعهدهندهست




