چرا من بعد از امتحان Vuepress ، Hugo و Hexo Astro را انتخاب کردم

من اخیراً در حال فارغ التحصیلی هستم و می خواستم برخی از تجربیات گذشته خود را ترتیب دهم.
بنابراین من به ایده ساختن یک وبلاگ شخصی رسیدم.
من همچنین می خواهم کل این روند را از انتخاب چارچوب استقرار مستند کنم ، امیدوارم که بتواند به دیگران که تازه مانند من شروع می کنند کمک کند.
🛠 انتخاب چارچوب
- VuEpress → بهتر برای مستندات ، اکوسیستم وبلاگ ضعیف تر
- ویژگی های وبلاگ دوستانه اما محدود
- گزینه های تم به سبک مستندات فنی تکیه می دهند
- پیکربندی پیچیده HUGO → (نسخه گسترده به GCC نیاز دارد) ، و تغییرات را شکست
- برای تدوین بهچین ابزار GCC نیاز دارد
- به روزرسانی های نسخه اغلب فاقد سازگاری عقب مانده است
- وابستگی موضوعی به نسخه های خاص باعث خرابی زمان اجرا می شود
- hexo → node.js اکوسیستم دوستانه ، اما انتخاب تم محدود
- Node.js مبتنی بر محیط توسعه
- اما مضامین بسیار همگن هستند و فاقد طرح های چشم نواز هستند.
- Astro → انتخاب نهایی! ✨
- پیکربندی آسان و UI انعطاف پذیر
- نزولی: نیاز به یادگیری مدل ارائه دهنده ترکیبی منحصر به فرد خود
💡 آسترو رندرنگ توضیح داد:
Astro از یک رویکرد متمایز “نسل استاتیک + هیدراتاسیون در تقاضا” استفاده می کند. به طور پیش فرض ، تمام مؤلفه ها از طرف سرور (SSR) به HTML استاتیک هستند. در صورت نیاز به تعامل ، اجزای خاص می توانند به صورت انتخابی برای ارائه مشتری در کنار مشتری (CSR) هیدراته شوند. این “معماری جزایر” در حالی که تعامل لازم را فراهم می کند ، بارگذاری اولیه سریع را تضمین می کند.
پس از تمام این صحبت های فنی ، توسعه واقعی عمدتاً شامل نوشتن TypeScript مخلوط با Markdown است. هنگام نیاز به یک ظاهر طراحی شده ، CSS را خودتان می نویسید و سپس محتوای Markdown را برای آن دسته از اجزای سبک استفاده می کنید.
تجارت؟ آنچه که می تواند وبلاگ نویسی مبتنی بر علامت گذاری ساده باشد ، نیاز به نوشتن پرونده های Astro برای کنترل یک ظاهر طراحی UI برای این انعطاف پذیری دارد. اما برای اخبار غیر کدگذاری ، بازپرداخت سفارشی سازی ارزش آن را دارد. من حتی آزمایشات ویترین واحد را برای عملکردهای ابزار وبلاگ خود نوشتم :).
🎢 سفر توسعه
دو روز کامل طول کشید تا یک وبلاگ بسازم که تا حدودی از آن راضی هستم.
در ابتدا من می خواستم از VuEpress استفاده کنم زیرا این کار معمول من است ، اما بعد از مرور مضامین فهمیدم که بهتر است برای مستندات مناسب باشد. مانند استفاده از پیچ گوشتی برای محکم کردن آجیل – کار می کند اما ایده آل نیست.
سپس هوگو را کشف کردم اما پیکربندی را مشکل ساز پیدا کردم – مضامین مورد علاقه من به نسخه گسترده ای که نیاز به نصب GCC Toolchain داشت ، نیاز داشت.
بعد از اینکه سرانجام محیط را تنظیم کردم ، یاد گرفتم که به روزرسانی های هوگو اغلب تغییرات شکستن را بدون سازگاری به عقب معرفی می کنند و باعث می شود الگوی انتخابی من شکست بخورد. بازی بیش از
بعد هگزو را امتحان کردم. در مقایسه با هوگو ، بنیاد Node.js آن توسعه را دوستانه تر کرد ، اما من هنوز هم پس از جستجوی گسترده نتوانستم مضامین جذاب پیدا کنم.
پس از مشورت با هوش مصنوعی ، آسترو را کشف کردم. پس از مرور بسیاری از الگوهای رایگان وبلاگ ، سرانجام یکی را پیدا کردم که قابل قبول باشد.
من در ابتدا هیجان زده شدم ، اما روند اجرای آن چالش برانگیز بود. من در ابتدا فکر کردم ---
نحو فقط پوشش قند بود ، اما بعداً متوجه شد که نشانگر بحرانی Astro است که طرف سرور را از کد سمت مشتری جدا می کند. کد سرور در زمان ساخت اجرا می شود ، کد مشتری در مرورگرها اجرا می شود.
اجرای چند زبانه نیز غیرقانونی بود – به جای داشتن کلیه مطالب تحت دایرکتوری های EN_US/ZH_CN ، نسخه ی نمایشی رسمی زبان ها را در دایرکتوری های محتوا تقسیم می کند. پس از سازش زیاد ، من با یک راه حل به سختی قابل قبول به پایان رسیدم.
experience تجربه استقرار
گردش کار GitHub و صفحات راحتی زیادی را برای توسعه دهندگان فراهم می کند ، اما نوشتن اسکریپت های YAML اغلب احساس محدود کننده و بی دست و پا می کند.
برای استقرار هم وبلاگ و هم برای تولید معیارها ، بیش از 20 تعهد از تنظیمات آزمایش و خطا را انجام دادم. راه حل نهایی شامل ایجاد یک مخزن جداگانه برای معیارها بود.
الزامات من تا حدودی خاص بود – من نیاز به تولید تصاویر معیارهای GitHub و ارجاع آنها از وبلاگ خود داشتم ، که هر دو تحت یک URL مستقر شده اند.
در ابتدا AI دو پرونده YAML ایجاد کرد که هنگام اجرای با هم ، یکدیگر را بازنویسی می کنند. ادغام آنها با اعلامیه های نام پرونده به نوعی معیارها را شکست. نسل SVG.
در نهایت مجبور شدم گردش کار را در دو مخزن تقسیم کنم. حداقل مشکل حل شد.