Gatsby چیست؟
۵ اسفند ۱۴۰۰
Gatsby یک فریمورک SSG مبتنی بر GraphQL و React است که بهدلیل عملکرد سریع برنامه نهایی و برخی دیگر از ویژگیهای ارائه شده، توجه توسعهدهندگان را به خود جلب کرده و بهسرعت در حال تبدیل شدن به یکی از اجزای اصلی توسعهی مدرن وب است.
جالبتر آنکه شما در حال بازدید از یک وبسایت Gatsby هستید و ما برای بهبود تجربهی کاربری در لیارا از این فریمورک استفاده کردهایم. ما تصمیم داشتیم تا با رعایت بالاترین استانداردهای دسترسی، صفحههای وب در سریعترین زمان ممکن بارگیری شوند.
آشنایی با مفاهیم و تکنولوژیهای وب مدرن
Gatsby را میتوان مخلوق وب مدرن دانست. در این میان مفاهیم و تکنولوژیهایی مانند معماری Jamstack و SSG (Static Site Generator)ها باعث میشوند تا بارگیری وبسایتها سریعتر انجام شود و همچنین تجربهی کاربری روانتری را به ارمغان بیاوریم.
Gatsby یک فریمورک SSG است
وبسایتهای استاتیک را میتوانیم وبسایتهایی بدانیم که با قرار گرفتن یک فایل HTML بر روی سرور، در دسترس عموم قرار گرفتهاند. حال شاید با خود بگویید که این وبسایتها از سال ۱۹۹۰ وجود داشتهاند بنابراین چه مشخصهای در SSGها نوآورانه بوده است؟
ما بهکمک SSGها میتوانیم محتوا dynamic در صفحههای وب داشته باشیم. در سیستمهای سنتیتر مثل WordPress یا Drupal باید درخواست کاربر پردازش میشد و اطلاعات رندر شدهی نهایی بهصورت یک فایل HTML در پاسخ به کاربر ارسال میشد اما SSGها تمامی اطلاعات را در زمان build از یک API دریافت میکنند و فایلهای استاتیک نهایی بر روی سرور قرار خواهند گرفت.
این روش چندین مزیت دارد که مهمترین آنها را میتوانیم سرعت و قابل اطمینان بودن وبسایت build شده بدانیم. حتی علاوهبر سرعت بالای بارگیری سایتهای استاتیک در مرورگر، دیگر نگران خطر افزایش ترافیک و ایجاد مشکل برای دادههای دیتابیس را نخواهیم داشت.
یکی دیگر از مزایای کلیدی SSGها این است که برای ارائه محتوا به یک CMS یا یک دیتابیس متکی نیستند و شما میتوانید محتوا را از هر API که با ساختار SSG شما سازگار باشد، دریافت کنید. اگرچه برخی SSGها به فایلهای Markdown محدود میشوند اما در Gatsby اینگونه نیست و گزینههای متنوعتری را در پیش روی خود خواهید داشت.
همچنین لازم به ذکر هست که با توجه به عملکرد سریع سایتهای استاتیک میتوانیم بهبود وبسایت برای موتورهای جستجو (SEO) را از مزایای SSGها بدانیم.
فریمورک Gatsby از معماری Jamstack پیروی میکند
Jamstack معماری است که در آن از زبان JavaScript، فایلهای Markup و API برای ساخت وبسایتهای مدرن استفاده میشود.
- بهکمک زبان JavaScript، دادهها بهصورت خودکار با رابط کاربری ترکیب میشوند و در معماری Jamstack هیچ محدودیتی در فریمورکها و کتابخانههایی که میتوانید برای این کار استفاده کنید، وجود ندارد.
- در این معماری میتوان APIها را قطعهای از پازل دانست که دادهها را بهکمک آن دریافت میکنیم.
- و در آخر M به Markup اشاره داره و ما میتوانیم فایلهای Markup را سورسی برای ساخت فایلهای HTML بدانیم.
حال در فریمورک Gatsby از کتابخانه React برای ایجاد رابط کاربری و از GraphQL برای اتصال کامپوننتها به API استفاده میشود. در این میان شما با استفاده از پلاگینها میتوانید GraphQL API مورد نیاز خود برای دریافت محتوا را به سیستمهای مدیریت محتوایی مانند Contentful، WordPress و Strapi اضافه کنید.
منبع: https://www.mparticle.com/blog/what-is-gatsby
همچنین بخوانید:
توسعهدهندگان دربارهی ما چه میگویند
تجربه کار باliara_cloud@امروز خیلی خوب بود. یکی از سرویس هام رو منتقل کردم روش و راضیم. انقد سریع و جذاب کارم راه افتادم اصن باورم نمیشد! برعکس سرویس های PaaS دیگه با اون همه پیچیدگیشون. دمتون گرم
...
MohammadReza
keikaavousi
بعد از بسته شدن @fandoghpaas و ناراحتی همهمون از اینکه یه سرویس خوب و صادق نمیتونه از پس هزینهها بر بیاد، سرویسم رو منتقل کردم به پاس لیارا (https://liara.ir @liara_cloud) . تجربه راحت و خوب. تفاوتهایی داشت که کمی کار میخواست ولی تا الان کاملا راضی.
jadi
jadi
یه خسته نباشید باید به تصمیمliara_cloud@بگم،
بعد از چندین روز سرکله زدن با سرویس های مشابه بالاخره تصمیم گرفتم لیارا رو امتحان کنم و باور نمیشه ۱۰ دقیقه بیشتر وقت نبرد،
دمتون گرم.
Arch
EbadiDev
واسه سرویس PaaS با اختلاف لیارا بهترین رابط کاربری داره و یکی از مزیتهای سرویس دیتابیسشون اینه که خودشون به صورت دورهای بکآپ میگیرن.
...
Ali Najafi
me_ali_najafi
یکی از کارهای خوبی که جدیداً میکنم اینه که یه دیتابیس روی لیارا میسازم و به پروژه وصل میکنم اینطوری هم خونه و هم محل کار دیتابیس بروز رو دارم و راحت میتونم ادامه بدم کار روliara_cloud@
Navid
1navid
عاشقliara_cloud@شدم درسته در حد AWS نیست ولی خب تجربه خوبی واسه پروژه های داخل ایران ارائه میده، میتونم رو CD هم اجراش کنم
Amir H Shekari
vanenshi