بررسی سال 2025 | Astro

مقدمه
سال نو مبارک، فضانوردان!
در این مقاله، برخی از مهمترین جنبههای Astro در سال 2025 را با تمرکز بر شاخصهای سلامت پروژه، ویژگیهای جدید، پروژههای مرتبط و رویدادهای قابل توجهی که برای من برجسته بود، برجسته میکنم. ما به سفر Astro در سال 2025 نگاه خواهیم کرد و به طور خلاصه به آنچه در سال 2026 در پیش است اشاره خواهیم کرد.
خواندن آن کمی طولانی است، اما چه کاربر قدیمی Astro باشید و چه تازه کار Astro، امیدوارم چیز مفیدی در اینجا پیدا کنید!
اگر علاقه مند هستید، من نیز مقالات مشابهی را برای سال های 2023 و 2024 نوشته ام، بنابراین در صورت تمایل آنها را نیز بررسی کنید:
شاخص های سلامت پروژه
نسخه های نسخه
از اوایل سال 2025، Astro نسخه 5.1.2 بود و در زمان نگارش این مقاله، نزدیک به پایان سال، نسخه 5.16.6 منتشر شد. از جمله نسخه های آلفا v6، در سال 2025 در مجموع 113 نسخه منتشر شد.
برای کسانی که در مورد جزئیات هر نسخه کنجکاو هستند، می توانید لیست کامل نسخه های Astro را در GitHub بررسی کنید.
ستاره در GitHub
Astro در اوایل سال 2025 از 50000 ستاره در GitHub گذشت و اکنون به 55200 ستاره رسیده است. این نشان دهنده افزایش نزدیک به 7000 ستاره از اوایل سال 2025 است.
در حالی که 55000 ستاره در حال حاضر یک عدد قابل توجه است، آیا می دانید Astro در بین تمام مخازن GitHub در کجا قرار دارد؟ از زمان نوشتن این مقاله، تنها 295 مخزن بیش از 55000 ستاره دارند! Astro در مجموع در رتبه ۲۹۳ قرار دارد که آن را در کنار پروژه هایی مانند FFmpeg و OpenAI Codex قرار می دهد. این نشان می دهد که رسیدن به 55000 ستاره یک نقطه عطف مهم است.
در زیر نمودار تاریخچه ستاره GitHub است که نشان می دهد Astro به طور پیوسته در طول سال ها ستاره ها را به دست می آورد.
دانلودهای NPM
دادههای روندهای npm نشان میدهد که Astro در ابتدای سال ۲۰۲۵ تقریباً ۳۶۰۰۰۰ بار دانلود هفتگی داشته است، اما این تعداد تا پایان سال به بیش از ۹۰۰،۰۰۰ افزایش یافته است. این افزایش حدود 2.5 برابری است که نشان میدهد پذیرش در مقایسه با سالهای گذشته سرعت گرفته است. این نشان می دهد که Astro در طیف گسترده ای از انواع پروژه ها پذیرفته شده است.

اکتبر 2025
Astro یکی از سریع ترین زبان های در حال رشد در GitHub در سال 2025 بود!

ممکن است فکر کنید، “صبر کنید، آیا Astro واقعا یک زبان است؟” این یک سوال منصفانه است، اما اگر کارشناسان زبان GitHub چنین بگویند، ما چه کسی هستیم که بحث کنیم؟ در هر صورت، دیدن Astro که به این شکل شناخته شده است، هیجان انگیز است.
برای جزئیات بیشتر، به وب سایت GitHub Octoverse 2025 مراجعه کنید.
Stack Overflow Developer Poll
Astro در نظرسنجی توسعه دهندگان Stack Overflow در سال 2025 تحسین شد!
این نظرسنجی سالانه تصویری فوری از نیازهای جامعه توسعه دهندگان جهانی ارائه می دهد، با تمرکز بر ابزارها و فناوری هایی که استفاده می کنند یا می خواهند درباره آنها بیشتر بیاموزند. از میان تمامی چارچوبها و فناوریهای وب، Astro با 62.2 درصد از 23678 پاسخدهنده، چهارمین مورد تحسینشدهترین افراد بود.

ستاره های در حال ظهور جاوا اسکریپت
JavaScript Rising Stars گزارشی سالانه است که محبوبترین و سریعترین پروژههای در حال رشد در اکوسیستم جاوا اسکریپت را بر اساس تعداد ستارههای جدید GitHub در سال گذشته نشان میدهد.
در ستارگان در حال ظهور جاوا اسکریپت 2025، Astro در رده Back-end/Full-stack رتبه 4 و همچنین در رده Static Sites رتبه 3 را کسب کرد. علاوه بر این، Starlight در رده سایت های استاتیک رتبه 8 را کسب کرد. حتی در مقایسه با پروژه های دیگر، Astro با تشخیص قوی متمایز است. حتما به سایت سر بزنید و جزئیات را بررسی کنید.
شایان ذکر است که سایت JavaScript Rising Stars با Astro ساخته شده است. این مخزن نیز به صورت عمومی در دسترس است، بنابراین در صورت علاقه به آن نگاهی بیندازید.
ویژگی های جدید و به روز
سال 2025 شاهد ورود چندین ویژگی جدید Astro بود که بسیاری از آنها تحت پرچم های آزمایشی در سال 2025 منتشر شدند، که به طور پیش فرض در نسخه اصلی نسخه 6 در اوایل سال 2026 در دسترس خواهند بود.
میتوانید پرچمهای آزمایشی ذکر شده در زیر را فعال کنید یا آخرین پیشنمایش نسخه ۶ را نصب کنید تا آنها را امتحان کنید!
مجموعه ای از محتوای زنده
Content Collections معرفی شده در Astro v2.0 یک ویژگی قدرتمند است که به شما امکان می دهد محتوای محلی مانند فایل های Markdown و MDX را به صورت ایمن مدیریت و استفاده کنید.
در نسخه 5.0، این مفهوم با معرفی Content Layer API دوباره تصور شد، که به محتوای بازیابی شده از CMS ها و API های خارجی اجازه می دهد تا با همان سطح ایمنی نوع فایل های Markdown و MDX محلی مدیریت شوند. با این حال، از آنجایی که این محتوا در زمان ساخت واکشی می شود، حفظ محتوای بسیار پویا یا سفارشی دشوار بود.
با معرفی تجربی مجموعههای محتوای زنده در نسخه 5.10.0، اکنون امکان بازیابی دادهها در زمان اجرا به جای زمان ساخت از طریق بارگذارهای محتوا وجود دارد. این به سایتها اجازه میدهد تا بدون نیاز به بازسازی هنگام بهروزرسانی محتوا، به آخرین دادهها به روشی امن دسترسی داشته باشند.
برای فعال کردن این ویژگی در Astro 5 (به طور پیش فرض در Astro 6 موجود است)، باید رندر درخواستی را پیکربندی کنید و سپس اضافه کنید experimental.liveContentCollections به فایل پیکربندی Astro خود پرچم بزنید:
liveContentCollections: true,
پس از آن، در src/live.config.ts، مجموعه های خود را به صورت زنده با استفاده از لودر تعریف کنید defineLiveCollection() تابع:
import { defineLiveCollection } from 'astro:content';
import { storeLoader } from '@mystore/astro-loader';
const products = defineLiveCollection({
apiKey: process.env.STORE_API_KEY,
endpoint: 'https://api.mystore.com/v1',
export const collections = { products };
پس از تکمیل این تنظیمات، میتوانید با استفاده از دادههای زنده دسترسی داشته باشید getLiveCollection() و getLiveEntry() ویژگی ها:
export const prerender = false; // Not needed in 'server' mode
import { getLiveCollection, getLiveEntry } from 'astro:content';
const { entries: allProducts, error } = await getLiveCollection('products');
// Handle error appropriately
console.error(error.message);
// Get products with a filter (if supported by your loader)
const { entries: electronics } = await getLiveCollection('products', { category: 'electronics' });
به شباهت های API های موجود توجه کنید؟ به طور خلاصه src/content.config.ts و src/live.config.ts، defineCollection و defineLiveCollection، و همچنین getCollection/getEntry و getLiveCollection/getLiveEntry، طراحی شده اند تا تقریباً به همان روش کار کنند. این واقعاً ظرافت طراحی API Astro را برجسته می کند.
با این حال، از آنجایی که محتوای زنده در زمان اجرا واکشی میشود، باید با خطاهای غیرمنتظره مقابله کنید و بهینهسازیهای عملکردی مانند حافظه پنهان را در نظر بگیرید. خبر خوب این است که Astro یک API برای کمک به شما در انجام این کار ارائه می دهد.
اگرچه در اینجا به آن پرداخته نشده است، اما همچنان میتوانید هنگام تعریف مجموعهها و توزیع بارکنندههای سفارشی npm خود مانند قبل از Zod استفاده کنید. برای جزئیات بیشتر، به مستندات رسمی مجموعههای محتوای زنده آزمایشی مراجعه کنید.
اگر علاقه مند به یادگیری از طریق ویدیو هستید، ممکن است بخواهید موارد زیر را نیز بررسی کنید:
تصاویر واکنش گرا
تصاویر بخش ضروری اکثر وب سایت ها هستند، اما نمایش صحیح آنها در دستگاه های مختلف به دور از اهمیت است. اندازه صفحه، وضوح، و فرمت تصویر تنها برخی از عواملی هستند که توسعه دهندگان باید هنگام رندر کردن تصاویر روی صفحه در نظر بگیرند.
برای رسیدگی به این چالشها به صورت انعطافپذیر، در نسخه 5.10.0، Astro رفتار جدیدی را معرفی کرد که اجرای تصاویر واکنشگرا را بسیار آسانتر میکند.
برای افزودن خودکار سبکهای جهانی برای تصاویر واکنشگرا، تنظیم کنید image.responsiveStyles به true در فایل پیکربندی Astro شما.
این به شما اجازه می دهد تا a را مشخص کنید layout ارزش از مؤلفه ای برای تعیین اینکه چگونه اندازه تصویر باید در صورت تغییر اندازه ظرف آن تغییر کند.
در مثال زیر، تنظیم از layout ویژگی تصویر را متناسب با ظرف و در عین حال که نسبت تصویر آن را بدون تجاوز از ابعاد مشخص شده حفظ می کند، مقیاس می کند.
import { Image } from 'astro:assets';
import myImage from '../assets/my_image.png';
alt="A description of my image."
با رفتار پاسخگوی جدید مورد نیاز است srcset و sizes مقادیر به طور خودکار تولید می شوند و سبک های مناسب برای تغییر اندازه مناسب اعمال می شوند. علاوه بر این، الف priority ویژگی اضافه خواهد شد تا بارگذاری تصاویر خاص با اولویت بالاتر امکان پذیر شود.
این کامپوننت خروجی HTML زیر را تولید می کند:
src="/_astro/my_image.hash3.webp"
srcset="/_astro/my_image.hash1.webp 640w,
/_astro/my_image.hash2.webp 750w,
/_astro/my_image.hash3.webp 800w,
/_astro/my_image.hash4.webp 828w,
/_astro/my_image.hash5.webp 1080w,
/_astro/my_image.hash6.webp 1280w,
/_astro/my_image.hash7.webp 1600w"
alt="A description of my image"
sizes="(min-width: 800px) 800px, 100vw"
style="--fit: cover; --pos: center;"
data-astro-image="constrained"
نشانه گذاری ایجاد شده ممکن است در نگاه اول پرمخاطب به نظر برسد، اما نکات کلیدی بسیار ساده هستند:
- این
srcsetویژگی به طور خودکار ایجاد می شود تا مرورگر بتواند مناسب ترین اندازه تصویر را برای صفحه فعلی انتخاب کند. - این
sizesمنعکس کننده محدودیت های چیدمان تنظیم شده توسطlayout،width، وheightپشتیبانی - Astro با استفاده از سبکهای محدودهبندی شده استفاده میکند
data-astro-imageویژگی هایی برای اطمینان از تغییر اندازه تصاویر بدون نیاز به CSS دستی.
علاوه بر این، سبکهای جهانی زیر توسط Astro تولید و اعمال میشوند تا اطمینان حاصل شود که اندازه تصاویر شما به درستی تغییر میکند:
:where([data-astro-image]) {
object-position: var(--pos);
:where([data-astro-image='full-width']) {
:where([data-astro-image='constrained']) {
همچنین شایان ذکر است که Astro v5.7.0 پشتیبانی از وارد کردن فایل های SVG به عنوان اجزای Astro را معرفی کرد. این یکی دیگر از ویژگی های مفید است، پس حتما آن را امتحان کنید!
import Logo from './path/to/svg/file.svg';
Logo width={64} height={64} fill="currentColor" />
برای کسب اطلاعات بیشتر در مورد تصاویر پاسخگو در Astro، اسناد رسمی را بررسی کنید.
اگر علاقه مند به یادگیری از طریق ویدیو هستید، ممکن است بخواهید موارد زیر را نیز بررسی کنید:
فونت ها
فونت ها نیز بخش مهمی از وب سایت ها هستند، اما بارگذاری کارآمد آنها می تواند به اندازه تصاویر چالش برانگیز باشد. انتخاب استراتژی راهاندازی مناسب، تعریف بازگشتهای بازگشتی، و افزودن نکات پیش از راهاندازی، همگی نیاز به پیکربندی دقیق دارند.
Astro قبلاً یک رویکرد داخلی برای کار با فونت ها ارائه نمی کرد، اما v5.7.0 یک API فونت آزمایشی را معرفی کرد. با استفاده از این API، Astro میتواند بهینهسازی فونتهای وب مانند بارگذاری پیشبارگذاری لینک، بازگشتهای بهینهشده و پیشفرضهای مطمئن را انجام دهد.
برای فعال کردن این ویژگی در Astro v5 (به طور پیش فرض در نسخه 6 موجود است)، پیکربندی کنید experimental.fonts با حداقل یک شی فونت:
import { defineConfig, fontProviders } from "astro/config";
export default defineConfig({
provider: fontProviders.google(),
cssVariable: "--font-roboto"
سپس اضافه کنید کامپوننت و سبک سایت گسترده در شما :
import { Font } from 'astro:assets';
Font cssVariable="--font-roboto" preload />
font-family: var(--font-roboto);
با این تنظیمات CSS @font-face قوانین و برچسب های پیش بارگذاری فونت به طور خودکار برای شما ایجاد می شود.
API فونت همچنین از ارائه دهندگان غیر Google پشتیبانی می کند، اجازه می دهد تا کنترل دقیقی بر فایل های فونت دانلود شده داشته باشید و حتی ایجاد ارائه دهنده فونت خود را ممکن می کند. حتما API جدید را امتحان کنید!
برای اطلاعات بیشتر در مورد API فونت آزمایشی به اسناد رسمی مراجعه کنید.
جلسات
Astro v5.7.0 جلسه API را به عنوان یک ویژگی پایدار معرفی کرد. این امکان ذخیره داده های سمت سرور را در چندین درخواست از یک کاربر فراهم می کند و به شما این امکان را می دهد که داده های کاربر، سبد خرید و سایر اطلاعات وضعیت را بدون نگرانی در مورد محدودیت اندازه داده پردازش کنید.
دادههای جلسه را میتوان توسط مؤلفههای Astro، صفحات، نقاط پایانی API، اکشنها و میانافزار دسترسی داشت. هنگامی که به داده های جلسه از اجزا یا صفحات Astro دسترسی دارید، از آن استفاده می کنید Astro.session، در حالی که در زمینه های دیگر استفاده می کنید context.session. در هر دو مورد، session شیء به همین ترتیب رفتار می کند. مثال زیر نحوه خواندن داده های سبد خرید جلسه در یک جزء Astro را نشان می دهد:
export const prerender = false; // Not needed with 'server' output
const cart = await Astro.session?.get('cart');
a href="/checkout">🛒 {cart?.length ?? 0} itemsa>
برای بسیاری از موارد استفاده، session.get() و session.set() تمام چیزی هستند که نیاز دارید با این حال، Sessions API نیز شامل می شود session.regenerate() و session.destroy() برای رسیدگی به بازسازی و پاکسازی شناسه جلسه، همراه با session.load() برای بارگیری یک جلسه توسط ID. هنگام اجرا در Node، Cloudflare یا Netlify، آداپتور به طور خودکار یک درایور ذخیره سازی را برای مدیریت جلسات پیکربندی می کند. در محیطهای دیگر، با تعیین دستی درایور، میتوان از جلسات استفاده کرد.
برای کسب اطلاعات بیشتر در مورد Sessions API، اسناد رسمی را بررسی کنید.
خط مشی امنیت محتوا
سیاست امنیتی محتوا (CSP) یک لایه امنیتی مهم است که به محافظت از وب سایت ها در برابر اسکریپت بین سایتی (XSS) و سایر حملات تزریق کد کمک می کند.
در حالی که CSP معمولاً با استفاده از پیاده سازی می شود nonce هدرهایی که برای هر درخواست نیاز به تولید سمت سرور دارند، Astro v5.9.0 پشتیبانی آزمایشی را برای یک رویکرد مبتنی بر هش با استفاده از برچسب ها این راه حل در تمام حالت های رندر (صفحات استاتیک، صفحات رندر شده توسط سرور و SPA) بدون پیچیدگی مدیریت غیر مستقیم سمت سرور، یکپارچه کار می کند.
هنگامی که CSP فعال است، Astro به طور خودکار یک را ایجاد می کند عنصر حاوی هش برای همه اسکریپت ها و سبک های استفاده شده در صفحه، از جمله مواردی که به صورت پویا بارگذاری می شوند. برای فعال کردن این ویژگی در Astro 5 (به طور پیش فرض در نسخه 6 موجود است)، اضافه کنید experimental.csp گزینه ای برای فایل پیکربندی Astro شما:
همچنین می توانید یک شی را برای پیکربندی گزینه های اضافی مانند algorithm برای مشخص کردن الگوریتم هش، directives برای پیاده سازی دستورات CSP سفارشی و scriptDirective/styleDirective برای تعیین منابع مجاز یا ارائه هش های اضافی برای منابع خارجی.
برای موارد استفاده پیشرفته تر، Astro یک API زمان اجرا را از طریق ارائه می دهد Astro.csp شی، به شما امکان می دهد دستورالعمل ها یا هش ها را بر اساس هر صفحه اضافه کنید. می توانید از روش هایی مانند csp.insertDirective()، csp.insertStyleHash()، و csp.insertScriptHash() برای سفارشی کردن CSP برای صفحات جداگانه.
شایان ذکر است که اسکریپت های داخلی نیاز به ارائه هش های سفارشی و جزء با این عملکرد سازگار نیست. حتما تنظیمات CSP خود را با استفاده از آن تست کنید astro build و astro preview، زیرا CSP در حالت توسعه پیاده سازی نشده است.
برای اطلاعات بیشتر در مورد خط مشی امنیت محتوای آزمایشی Astro به اسناد رسمی مراجعه کنید.
اگر علاقه مند به یادگیری از طریق ویدیو هستید، ممکن است بخواهید موارد زیر را نیز بررسی کنید:
سرور MCP Astro Docs
اگرچه سال 2025 به طور گسترده به عنوان سال کدنویسی vibe توصیف می شود، Astro به طور مداوم با پشتیبانی از ابزارهای هوش مصنوعی نیز در حال پیشرفت است. اسناد Astro اکنون شامل یک صفحه جدید “ساختمان با هوش مصنوعی” است که نکاتی را برای توسعه پروژه های Astro با هوش مصنوعی ارائه می دهد. ستاره این نمایش سرور MCP Astro Docs است که در زیر نشان داده شده است.
پروتکل زمینه مدل (MCP) استانداردی برای ابزارهای هوش مصنوعی برای دسترسی به سیستم های خارجی است. با سرورهای MCP، ابزارهای هوش مصنوعی می توانند اقداماتی مانند جستجوی اسناد، اجرای کد و سایر وظایف را انجام دهند.
سرور MCP Astro Docs که در جولای 2025 منتشر شد، به ابزارهای هوش مصنوعی اجازه دسترسی به اسناد رسمی Astro را می دهد. با استفاده از این سرور به عنوان منبع اطلاعات، ابزارهای هوش مصنوعی می توانند از اتکا به توصیه های قدیمی اجتناب کنند و بهترین شیوه های فعلی را درک کنند. فرآیند اتصال به سرور MCP بستگی به ابزار مورد استفاده و اسناد Astro دارد که با چندین ویرایشگر، عامل و دستیار محبوب شروع می شود.
Official MCP Inspector یک گزینه مناسب برای آزمایش سریع سرور MCP Astro Docs است. با دستور می توانید آن را اجرا کنید npx @modelcontextprotocol/inspector، سپس انتخاب کنید جریان HTTP به عنوان حمل و نقل نوع و وارد کنید https://mcp.docs.astro.build/mcp به عنوان یک URL
بعد از اینکه کلیک کردید تماس بگیرید، بازرس به سرور MCP متصل می شود و search_astro_docs ابزار به عنوان یک مورد در دسترس در زیر ظاهر می شود فهرست ابزارها. انتخاب آن و ارائه هر موضوع مرتبط با Astro به عنوان پرس و جو به شما امکان می دهد داده های خام را از اسنادی که هوش مصنوعی دریافت می کند مشاهده کنید:

برای اطلاعات بیشتر درباره سرور MCP Astro Docs، اسناد رسمی را بررسی کنید.
astro:config
در نسخه 5.7.0، Astro برای وارد کردن زیرمجموعهای از پیکربندی Astro به روشی ایمن، پشتیبانی اضافه کرد. این astro:config ماژول مجازی دو زیر ماژول را ارائه می دهد، /client و /server، که بسته به محیط اجرا برای استفاده طراحی شده اند.
مقادیر زیر در حال حاضر در دسترس هستند /client و /server. توجه داشته باشید که اطلاعات مربوط به مسیرهای دایرکتوری عمداً از فهرست حذف می شوند /client به دلایل امنیتی:
می توانید از این مقادیر برای ایجاد برنامه های کاربردی مختلف استفاده کنید. برای مثال، اسناد Astro نمونهای از تابعی را ارائه میکند که به صورت شرطی یک اسلش انتهایی اضافه میکند، که در زیر نشان داده شده است:
import { trailingSlash } from "astro:config/client";
function addForwardSlash(path) {
if (trailingSlash === "always") {
return path.endsWith("https://astro.build/") ? path : path + "https://astro.build/";
برای کسب اطلاعات بیشتر، اسناد رسمی را بررسی کنید astro:config ماژول
فضاهای کاری Chrome DevTools
پشتیبانی آزمایشی از فضاهای کاری Chrome DevTools در نسخه 5.13.0 Astro اضافه شد. این به شما امکان می دهد محیط توسعه محلی خود را به عنوان یک فضای کاری به Chrome DevTools متصل کنید و فایل های پروژه را مستقیماً از DevTools ویرایش کنید.
برای فعال کردن این ویژگی، اضافه کنید experimental.chromeDevtoolsWorkspace به فایل پیکربندی Astro خود پرچم بزنید:
chromeDevtoolsWorkspace: true,
وقتی این فعال باشد، Astro به طور خودکار فایل پیکربندی مورد نیاز برای فضاهای کاری Chrome DevTools را تولید می کند. سپس می توانید پروژه خود را در کروم باز کنید و کلیک کنید تماس بگیرید ج منابع > فضاهای کاری تب در DevTools. سپس فایل های پروژه شما در DevTools نمایش داده می شود:

برای کسب اطلاعات بیشتر در مورد ادغام فضاهای کاری Chrome DevTools، اسناد رسمی را بررسی کنید.
بهبود عملکرد و ثبات
نه تنها ویژگیهای جدید، بلکه پیشرفتهای زیادی در ویژگیهای موجود وجود داشت. برخی از نکات برجسته لیست شده در زیر شامل گزینه هایی برای حفظ استفاده مداوم از اسلش انتهایی و هشدار در مورد برخوردهای مسیر از پیش ارائه شده است. خوب است که شاهد بهبود کیفیت برنامه بدون نیاز به ایجاد تغییرات عمده در پایگاه کد باشید.
نور ستاره
Starlight موضوع رسمی ساخت سایت های مستندسازی با Astro است. از زمانی که در سال 2023 منتشر شد، محبوبیت آن به طور پیوسته افزایش یافته است و در سال 2025، Starlight سایت های مستندسازی را برای Cloudflare، Google، Microsoft، Netlify، OpenAI، WPEngine و تعداد بیشماری دیگر نیرو می دهد.
خود Starlight نیز در طول سال به تکامل خود ادامه داد و شاهد هفت نسخه جزئی با بهروزرسانیها بود که شامل یک سیستم میانافزار داده مسیریابی قدرتمند برای پیادهسازی منطق سفارشی، پشتیبانی از جستجوی چند سایت، پیوندهای لنگر عنوان خودکار، لایههای آبشاری CSS و چندین بهبود دسترسی و بسیاری موارد دیگر بود. Starlight سال 2025 را با:
- 50 افزونه، ابزار و ادغام انجمن
- 300 همکار
- 3300 نامزدی
- 7600 ستاره GitHub
- بیش از 10 هزار پروژه فعال
برای اینکه با تمام پیشرفتها و نسخه 1.0 بعدی در سال جاری همراه باشید، حتماً نسخههای Starlight را در GitHub دنبال کنید.
موضوعات دیگر
ViteConf
در 9 و 10 اکتبر 2025، ViteConf در آمستردام، هلند برگزار شد. سارا رینزبرگر و مت کین از تیم Astro در مورد کمک های قابل توجهی به پروژه های منبع باز صحبت کرد و به روزرسانی هایی را در مورد اینکه Astro امروز کجاست و چه چیزی در پیش است به اشتراک گذاشت. اگر هنوز گفتگوها را تماشا نکردهاید، حتماً آنها را بررسی کنید:
به هر حال، در زیر تصویری که توسط Evan You، خالق Vue and Vite گرفته شده است، نشان داده شده است فرد شات و مت کین از تیم Astro در گفتگو با Tanner Linsley از TanStack.ViteConf یک کنفرانس واقعا هیجان انگیز است که در آن توسعه دهندگان بسیاری از پروژه های مختلف به این شکل گرد هم می آیند!
کدگذاران حزب pic.twitter.com/iw66QJg2wl
— ایوان تو (@evanyou) 10 اکتبر 2025
Astro March
فروشگاه رسمی کالاهای Astro دوباره با نام Astro Mart معرفی شد. هم طراحی و هم طیف محصولات اصلاح شده و حمل و نقل بین المللی هم اکنون در دسترس است. همچنین می توانید اقلامی را خریداری کنید که توسط برندگان مسابقه طراحی Spirit of Astro ایجاد شده اند. حتما آن را بررسی کنید و یک سوغاتی Astro را بردارید.
برنامه شریک آژانس Astro
در آوریل 2025، Astro برنامه شریک آژانس Astro را راه اندازی کرد، که برای ارتباط کسب و کارهایی که به دنبال خدمات توسعه حرفه ای هستند با آژانس های متخصص در Astro طراحی شده است. این برنامه شامل فهرست راهنمای آژانس، پشتیبانی تولید سرنخ، گواهی رسمی با نشان های شریک، دسترسی مستقیم به منابع تیم Astro، و یک مدل مالی است که از سرمایه گذاری مستمر در پروژه منبع باز پشتیبانی می کند.
شرکای راه اندازی شامل Bejamas، Lucky Media، EXDST و 58 agents با Bits&Letters و Seibert Group بودند که مدت کوتاهی بعد به آن ملحق شدند. اگر به دنبال کمک متخصص برای ساخت پروژه بعدی Astro خود هستید، حتماً دایرکتوری شریک آژانس را بررسی کنید.
سال 2025 یک سال برجسته برای پایداری Astro بود و چندین شرکت به عنوان حامیان رسمی معرفی شدند.
در سپتامبر، Mux با حمایت ماهانه 5000 دلار به شریک رسمی ویدیو تبدیل شد و دو ادغام Astro را برای پخش و آپلود ویدیو منتشر کرد. Webflow یک کمک مالی 150000 دلاری با تولید کننده کد هوش مصنوعی خود که به طور کامل بر روی Astro ساخته شده است، اعلام کرد. Cloudflare همچنین 150000 دلار کمک کرد و به یک شریک رسمی اسپانسر تبدیل شد. بعداً در نوامبر، Stainless به عنوان یک شریک حامی به آن ملحق شد و پلتفرم Stainless Docs خود را که بر اساس Starlight ساخته شده بود، راهاندازی کرد.
به طور خاص، Cloudflare و Netlify برای پشتیبانی از پروژههای منبع باز با هم همکاری کردهاند و نشان میدهند که حتی رقبا نیز میتوانند به نفع وب گرد هم آیند. همه این کمکها مستقیماً به پشتیبانی طولانیمدت پروژه منبع باز Astro میرود.
ایجاد شده با Astro
بسیاری از وب سایت ها با Astro در سال 2025 ایجاد شدند و سایت های زیر برخی از موارد مورد علاقه شخصی من هستند. اگر سایت Astro را پیدا کردید که دوست دارید، ادامه دهید و در مورد آن در رسانه های اجتماعی یا در انجمن Discord ما پست کنید #showcase کانال
اگر پروژه Astro خود را ساختهاید، میتوانید آن را به نمایشگاه رسمی Astro ارسال کنید و کار خود را در کنار سایر سایتهای برجسته مشاهده کنید.
Biome
Biome که ویژگیهای قالببندی و linter را برای چندین زبان مانند JavaScript، JSON و CSS فراهم میکند، پشتیبانی کامل از چندین فریمورک از جمله Astro در نسخه 2.3 را معرفی کرد. این بدان معناست که قالببندی و پردهبندی برای Astro در حال حاضر خارج از چارچوب است. هنگامی که تجربه کردید که Biome چقدر سریع است، بازگشت به عقب دشوار است، بنابراین اگر هنوز آن را امتحان نکرده اید، اکنون زمان بسیار خوبی برای انجام آن است!
Oxc
Oxc مجموعه ای از ابزارهای جاوا اسکریپت است که به زبان Rust نوشته شده است. یکی از این ابزارها Oxlint است که در جولای 2025 به نسخه 1.0 رسید و اکنون از linting پشتیبانی می کند. .astro فایل ها نیز پشتیبانی لینتینگ در حال حاضر به کد داخل محدود شده است tags, but performance is already impressive and comparable to Biome. Since Oxc also provides a formatter called Oxfmt, it will be interesting to see its future progress toward broader Astro support.
Vite+
There is little doubt that Vite is one of the most important tools in modern web development. Astro runs on top of Vite, and a wide range of frameworks including Nuxt, SvelteKit, and TanStack Start rely on it in their own ecosystems as well. During ViteConf 2025, its creator Evan You presented Vite+, which he calls the unified toolchain for the web. Vite+ is scheduled to reach public preview in early 2026. Although the details have not yet been fully revealed, it is expected to enhance the development experience for many frameworks, including Astro. If this sounds interesting, be sure to request early access on the Vite+ website.Looking Ahead to 2026 and Astro v6
Astro has a public Project Roadmap where its future development direction is discussed. Here, we will take a brief look at some proposals at Stage 2 or above that are expected to be added to Astro, giving a preview of what is coming in 2026.Astro v6
While 2025 did not see a major version release, Astro v6 is right around the corner! An alpha version of v6 was first released in December 2025 with support for workerd in dev mode for Cloudflare, an update to Zod 4, the stabilization of many experimental features, and more. (See the v6 branch CHANGELOG.md for complete details.) Most of the v6 scope is already included in the alpha releases, and the first v6 beta release with an accompanying blog post is planned in the very near future! You can upgrade to the latest available v6 version using our v6 Upgrade Guide which details all breaking changes that might require changes to your existing project code.Route Caching
Route caching is an API that aims to provide declarative cache control based on web standards in a platform-independent way. The early idea behind this new feature was first teased by Matt Kane in his ViteConf 2025 talk. Below is a sample taken from the RFC, which shows that you can configure values such asmaxAge, swr, and tags on a per-route basis, and invalidate caches by path or tag. It is also designed to support cache invalidation in combination with the cacheHints returned from getLiveEntry() in the Live Content Collections mentioned earlier:
// src/pages/products/[id].astroimport { getEntry } from 'astro:content';const product = await getEntry('products', Astro.params.id); lastModified: product.updatedAt, maxAge: 300, // Cache for 5 minutes swr: 3600, // Stale-while-revalidate for 1 hour tags: ['products', `product:${product.id}`]h1>{product.data.name}h1>p>{product.data.description}p>
// src/pages/api/webhook.tsexport const POST: APIRoute = ({ cache }) => { cache.invalidate({ path: "/products/laptop" }); return Response.json({ ok: true });
// src/pages/api/webhook.tsexport const POST: APIRoute = ({ cache }) => { cache.invalidate({ tag: "products" }); return Response.json({ ok: true });
// src/pages/products/[slug].astroimport { getLiveEntry, render } from 'astro:content';const { entry, cacheHint } = await getLiveEntry('products', Astro.params.slug);// Apply cache hints from the live collection loaderconst { Content } = await render(entry);
Tracing Hooks for Astro
This is a proposal to add a low-overhead, general-purpose instrumentation hook system to the Astro core. Distributed tracing is an effective way to identify application performance bottlenecks, but integrating OpenTelemetry directly into Astro would significantly increase the number of dependencies. Instead, this proposal introduces a mechanism that allows operations such as page rendering, middleware execution, and component rendering to be measured using before and after hooks. When no listeners are registered, overhead is kept to a minimum, while observability can still be achieved through integrations such as@astrojs/opentelemetry.
This proposal is currently at Stage 2, and if you are interested, you can share feedback by commenting on the proposal or on the related pull request. If you have any thoughts or questions, be sure to check them out.
Closing Thoughts
Whew, that was a long one. Thank you so much for reading through to the end! Looking back, I hope this article conveyed just how much the Astro ecosystem has matured. Further enhancements to existing features like Content Collections, as well as the introduction of thoughtful APIs for traditionally difficult areas such as responsive images and fonts, feel very much in line with Astro philosophy. Content caching is another area that often causes pain for developers due to its close ties to infrastructure, so I am particularly excited about the APIs aiming to address those challenges. I cannot wait to see what new features and improvements Astro brings in 2026.Source link



