Forwarded from Geek Alerts
This media is not supported in your browser
VIEW IN TELEGRAM
هفتمین استارشیپ، با موفقیت پرتاب شد و بوستر Super Heavy برای دومینبار با بازوهای پرتاب گرفته شد اما متأسفانه خود فضاپیما بعد از مدتی به دلیل از کار افتادن بعضی از موتورها ارتباطشون رو باهاش از دست دادن، درنتیجه به طور خودکار منهدم شد. تونستند بوستر رو برگردونن اما موشک نتونست هدفش که چرخش کامل به دور زمین و رهاسازی شبهماهوارههای استارلینک بود رو انجام بده.
صحنههایی از ورود مجدد موشک منهدمشده به جو در جزیرههای تورکس و کایکوس دیده شد. در ویدیوها میبینید.
space.com
hadi @geekalerts
صحنههایی از ورود مجدد موشک منهدمشده به جو در جزیرههای تورکس و کایکوس دیده شد. در ویدیوها میبینید.
space.com
hadi @geekalerts
Forwarded from Armon technical logs (armon Taheri)
از دوستان کسی itweekend امسال رو شرکت میکنه خوشحال میشم هم دیگه رو ببینم
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰داستان لینوکس از زبان اندرو تننبام
🔹در سالهای اولیه توسعه MINIX، کاربران درخواست ویژگیهای بیشتری داشتند، اما نویسنده به دلیل محدودیتهای آموزشی (مانند قابل فهم بودن سیستم برای دانشجویان در یک ترم دانشگاهی) از اضافه کردن این ویژگیها خودداری کرد. این موضوع باعث نارضایتی کاربران شد. در آن زمان، FreeBSD در دسترس نبود و گزینهای جایگزین وجود نداشت. در نتیجه، لینوس توروالدز، یک دانشجوی فنلاندی، در سال ۱۹۹۱ تصمیم گرفت یک سیستمعامل شبیهسازی یونیکس به نام لینوکس ایجاد کند. اولین نسخه لینوکس (0.01) بر روی MINIX توسعه یافت و از
ایدههای آن، مانند ساختار درخت منبع و طرحبندی سیستم فایل، الهام گرفت. این نسخه شامل ۹۳۰۰ خط کد C و ۹۵۰ خط اسمبلی بود و از نظر اندازه و عملکرد مشابه MINIX بود.
🔹لینوکس به سرعت رشد کرد و با افزودن ویژگیهایی مانند حافظه مجازی، سیستم فایل پیشرفتهتر و شبکهسازی، به یک سیستمعامل کامل و تولیدی تبدیل شد. اگرچه در ابتدا فقط روی پردازندههای ۳۸۶ اجرا میشد، اما به سرعت به پلتفرمهای دیگر منتقل شد. با این حال، لینوکس بهدلیل استفاده گسترده از ویژگیهای غیراستاندارد کامپایلر gcc، با چالشهایی در سازگاری با کامپایلرهای دیگر مانند LLVM مواجه شد.
🔹نسخه ۱.۰ لینوکس در سال ۱۹۹۴ منتشر شد و شامل ۱۶۵۰۰۰ خط کد بود. این نسخه ویژگیهایی مانند سیستم فایل جدید، فایلهای مپشده به حافظه و شبکههای سازگار با BSD را ارائه کرد. در سالهای بعد، لینوکس با انتقال نرمافزارهای یونیکس و مشارکت گسترده توسعهدهندگان، به سرعت پیشرفت کرد.
🔹نسخه ۲.۰ در سال ۱۹۹۶ منتشر شد و شامل ۴۷۰۰۰۰ خط کد C و ۸۰۰۰ خط اسمبلی بود. این نسخه از معماریهای ۶۴ بیتی، چندبرنامهنویسی متقارن و پروتکلهای شبکه جدید پشتیبانی میکرد. بخش عمدهای از کد این نسخه به درایورهای دستگاههای مختلف اختصاص داشت. پس از آن، نسخههای متعددی از لینوکس منتشر شدند که به رشد و گسترش این سیستمعامل کمک کردند.
ترجمه و گرفته شده از کتاب سیستم عامل تننبام
🔹در سالهای اولیه توسعه MINIX، کاربران درخواست ویژگیهای بیشتری داشتند، اما نویسنده به دلیل محدودیتهای آموزشی (مانند قابل فهم بودن سیستم برای دانشجویان در یک ترم دانشگاهی) از اضافه کردن این ویژگیها خودداری کرد. این موضوع باعث نارضایتی کاربران شد. در آن زمان، FreeBSD در دسترس نبود و گزینهای جایگزین وجود نداشت. در نتیجه، لینوس توروالدز، یک دانشجوی فنلاندی، در سال ۱۹۹۱ تصمیم گرفت یک سیستمعامل شبیهسازی یونیکس به نام لینوکس ایجاد کند. اولین نسخه لینوکس (0.01) بر روی MINIX توسعه یافت و از
ایدههای آن، مانند ساختار درخت منبع و طرحبندی سیستم فایل، الهام گرفت. این نسخه شامل ۹۳۰۰ خط کد C و ۹۵۰ خط اسمبلی بود و از نظر اندازه و عملکرد مشابه MINIX بود.
🔹لینوکس به سرعت رشد کرد و با افزودن ویژگیهایی مانند حافظه مجازی، سیستم فایل پیشرفتهتر و شبکهسازی، به یک سیستمعامل کامل و تولیدی تبدیل شد. اگرچه در ابتدا فقط روی پردازندههای ۳۸۶ اجرا میشد، اما به سرعت به پلتفرمهای دیگر منتقل شد. با این حال، لینوکس بهدلیل استفاده گسترده از ویژگیهای غیراستاندارد کامپایلر gcc، با چالشهایی در سازگاری با کامپایلرهای دیگر مانند LLVM مواجه شد.
🔹نسخه ۱.۰ لینوکس در سال ۱۹۹۴ منتشر شد و شامل ۱۶۵۰۰۰ خط کد بود. این نسخه ویژگیهایی مانند سیستم فایل جدید، فایلهای مپشده به حافظه و شبکههای سازگار با BSD را ارائه کرد. در سالهای بعد، لینوکس با انتقال نرمافزارهای یونیکس و مشارکت گسترده توسعهدهندگان، به سرعت پیشرفت کرد.
🔹نسخه ۲.۰ در سال ۱۹۹۶ منتشر شد و شامل ۴۷۰۰۰۰ خط کد C و ۸۰۰۰ خط اسمبلی بود. این نسخه از معماریهای ۶۴ بیتی، چندبرنامهنویسی متقارن و پروتکلهای شبکه جدید پشتیبانی میکرد. بخش عمدهای از کد این نسخه به درایورهای دستگاههای مختلف اختصاص داشت. پس از آن، نسخههای متعددی از لینوکس منتشر شدند که به رشد و گسترش این سیستمعامل کمک کردند.
ترجمه و گرفته شده از کتاب سیستم عامل تننبام
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
شرط میبندم اینو نمیدونستی:
توی php میتونی واسه خوانایی بیشتر بین اعداد _ قرار بدی و هیچ خللی توی برنامت وارد نشه؟ حتی عملیات ریاضی هم به درستی کار میکنن.
اگه باور نداری همین الان برو امتحانش کن
حالا به چه دردی میخوره؟ خوب از اونجایی که نمیشه داخل کد کاما بین اعداد گذاشت، این حرکت میتونه خوانایی کد رو ببره بالا.
@DevTwitter | <Pouya Farshidnia/>
توی php میتونی واسه خوانایی بیشتر بین اعداد _ قرار بدی و هیچ خللی توی برنامت وارد نشه؟ حتی عملیات ریاضی هم به درستی کار میکنن.
اگه باور نداری همین الان برو امتحانش کن
حالا به چه دردی میخوره؟ خوب از اونجایی که نمیشه داخل کد کاما بین اعداد گذاشت، این حرکت میتونه خوانایی کد رو ببره بالا.
@DevTwitter | <Pouya Farshidnia/>
Forwarded from محتوای آزاد سهراب
برگردیم با معرفی یک برنامه جدید.
برنامه Alpaka یک کلاینت ollama نوشته شده با کریگامی و برای میزکار کیدیای هستش.
درحال حاضر خیلی ساده است، میتونید مدل هایی که روی سیستم دارید رو انتخاب کنید و باهاشون چت کنید.
@SohrabContents
برنامه Alpaka یک کلاینت ollama نوشته شده با کریگامی و برای میزکار کیدیای هستش.
درحال حاضر خیلی ساده است، میتونید مدل هایی که روی سیستم دارید رو انتخاب کنید و باهاشون چت کنید.
@SohrabContents
Forwarded from Laravel News
Television is a Multi-purpose Fuzy Finder TUI https://laravel-news.com/television-tui
Laravel News
Television is a Multi-purpose Fuzy Finder TUI - Laravel News
Television is a blazing-fast general-purpose fuzzy finder TUI. It is highly configurable and allows you to quickly search through all kinds of data sources, such as files, Git history, environment variables, etc.
Forwarded from Ninja Learn | نینجا لرن
🎓 به دنیای برنامهنویسی و مهندسی کامپیوتر خوش آمدید!💻
🏆 آیا میخواهید مهارتهای خود را در برنامهنویسی ارتقا دهید؟
💠ما در آتوکس کامپیوتر بهترین دورههای آموزشی را برای شما فراهم کردهایم!
💻🔹 دورههای ما شامل:
📔 با ما به جمع متخصصان بپیوندید!
🎛 برای اطلاعات بیشتر و ثبتنام به کانال ما بپیوندید:
🔴 گروه T.me/computerATOX
🟢 کانال T.me/channelATOX
🟠 ربات T.me/C_ATOX_bot
همین امروز شروع کنید و آینده خود را بسازید!💡
🏆 آیا میخواهید مهارتهای خود را در برنامهنویسی ارتقا دهید؟
💠ما در آتوکس کامپیوتر بهترین دورههای آموزشی را برای شما فراهم کردهایم!
💻🔹 دورههای ما شامل:
🔻• 17 رودمپ تخصصی برنامه نویسی مثل بک اند، فرانت اند، هوش مصنوعی و....
🔺پوشش تمامی دروس مهندسی کامپیوتر از ریاضی 1 و مبانی کامپیوتر تا ریاضیات مهندسی و....
🔹• یادگیری کنکور کارشناسی ارشد کامپیوتر + منابع
🔹• بخش تخصصی حل مشکل + کارگاه کامپیوتر + پادکست و...
🔺• و بسیاری دیگر...
📔 با ما به جمع متخصصان بپیوندید!
🎛 برای اطلاعات بیشتر و ثبتنام به کانال ما بپیوندید:
🔴 گروه T.me/computerATOX
🟢 کانال T.me/channelATOX
🟠 ربات T.me/C_ATOX_bot
همین امروز شروع کنید و آینده خود را بسازید!💡
Forwarded from Sudoer (Morteza Bashsiz)
درود
توی توسعه nipoVPN به یه جایی رسیدم که هیچ راه حلی براش ندارم
هرچی هم بیشتر میخونم بیشتر متوجه میشم که هیچی نمیدونم
توی توسعه nipoVPN به یه جایی رسیدم که هیچ راه حلی براش ندارم
هرچی هم بیشتر میخونم بیشتر متوجه میشم که هیچی نمیدونم
Forwarded from HICTE Blog (smm)
#سی
توی C اسامی رو بصورتی که اولش _ و یه حرف بزرگ یا __ باشه ننویسید.
خطایی وجود نداره اما توصیه کمیتهی استاندارد این هست.
علتش هم اینه که اگه بخوان توی استانداردهای جدیدتر C در آینده کلیدواژهی جدیدی رو معرفی کنن میان بصورتی که _X یا __ [اون X میتونه هر حرف بزرگ انگلیسی باشه] تو اول اسم کلیدواژه باشه ایجادش میکنن تا با اسامیای که توسعه دهندهها تو کدای قدیمیشون استفاده کردن تداخلی ایجاد نشه و بهشون
مثلا تایپ بولین توی C99 معرفی شد و برای کلیدواژهش
رو اختصاص دادن و از bool استفاده نکردن چون توی کدای قدیمی ملت برای خودشون bool رو برای بولین [خود زبان تایپ بولین نداشت قبل ۹۹] تعریف میکردن.
حالا اگه شما بیاین مثلا اسم متغیر رو
یا
بذارین ممکنه بعدا یه کلیدواژه بیاد که همون اسم متغیر شما باشه و حالا باید بشینین ریفکتور کنین زخم شین.
پینوشت۱: البته الان توی C23 بعد چندین سال فاصله دیگه رسما کلیدواژه bool رو قرار دادن.
پینوشت۲: با هدر
مطالعهی بیشتر
🚁 Hicte Blog
توی C اسامی رو بصورتی که اولش _ و یه حرف بزرگ یا __ باشه ننویسید.
خطایی وجود نداره اما توصیه کمیتهی استاندارد این هست.
علتش هم اینه که اگه بخوان توی استانداردهای جدیدتر C در آینده کلیدواژهی جدیدی رو معرفی کنن میان بصورتی که _X یا __ [اون X میتونه هر حرف بزرگ انگلیسی باشه] تو اول اسم کلیدواژه باشه ایجادش میکنن تا با اسامیای که توسعه دهندهها تو کدای قدیمیشون استفاده کردن تداخلی ایجاد نشه و بهشون
Reserved Identifiers میگن.مثلا تایپ بولین توی C99 معرفی شد و برای کلیدواژهش
_Boolرو اختصاص دادن و از bool استفاده نکردن چون توی کدای قدیمی ملت برای خودشون bool رو برای بولین [خود زبان تایپ بولین نداشت قبل ۹۹] تعریف میکردن.
حالا اگه شما بیاین مثلا اسم متغیر رو
_Complexیا
__complexبذارین ممکنه بعدا یه کلیدواژه بیاد که همون اسم متغیر شما باشه و حالا باید بشینین ریفکتور کنین زخم شین.
پینوشت۱: البته الان توی C23 بعد چندین سال فاصله دیگه رسما کلیدواژه bool رو قرار دادن.
پینوشت۲: با هدر
stdbool.h هم میشد از bool استفاده کرد و این اختیار وجود داشت اگه توی کدی قبلا bool استفاده نشده با اضافه کردن این هدر از کلیدواژه bool استفاده کرد.مطالعهی بیشتر
🚁 Hicte Blog
Forwarded from Sudoer (Morteza Bashsiz)
اینم یادم اومد بگم
چند سال پیش یهو به سرم زد که بشینم ببینم بوت لودر (Boot loader) چطوری کار میکنه
بعد دیدم با منابع موجود دقیق نمیتونم متوجهش بشم و شروع کردم به خوندن کد
بعد دیدم کدش رو هم متوجه نمیشم و نشستم چندماهی وقت گذاشتم و بوتلودر نوشتم که میومد دیوایسها رو میشناخت و سکتور اولشون رو میخوند و تحلیل میکرد و اونایی که قابل بوت شدن بودن رو لیست میکرد و نشون میداد وفقط همین کار رو میکرد
حالا اینکه بقیه کارایی که بوت لودر میکنه رو دیگه بماند جای خودش
آخرشم همه کد رو پاک کردم ریختم دور و نشستم سر جام و گفتم من با این سطح دانشم همین که بلد باشم از این ابزارها درست استفاده کنم خیلی کار بزرگی کردم
چند سال پیش یهو به سرم زد که بشینم ببینم بوت لودر (Boot loader) چطوری کار میکنه
بعد دیدم با منابع موجود دقیق نمیتونم متوجهش بشم و شروع کردم به خوندن کد
بعد دیدم کدش رو هم متوجه نمیشم و نشستم چندماهی وقت گذاشتم و بوتلودر نوشتم که میومد دیوایسها رو میشناخت و سکتور اولشون رو میخوند و تحلیل میکرد و اونایی که قابل بوت شدن بودن رو لیست میکرد و نشون میداد وفقط همین کار رو میکرد
حالا اینکه بقیه کارایی که بوت لودر میکنه رو دیگه بماند جای خودش
آخرشم همه کد رو پاک کردم ریختم دور و نشستم سر جام و گفتم من با این سطح دانشم همین که بلد باشم از این ابزارها درست استفاده کنم خیلی کار بزرگی کردم
Forwarded from Laravel News
Simplified Stream Response Handling in Laravel https://laravel-news.com/stream-response-handling
Laravel News
Simplified Stream Response Handling in Laravel - Laravel News
Discover Laravel's resource() method for simplified HTTP stream handling. Learn how to streamline file downloads and storage operations with this elegant approach to stream response processing.
Forwarded from محتوای آزاد سهراب
خب... یک مدل جدید از جبیر ایجاد شده که توی ویکی پارچ درموردش توضیح دادم، اگر میتونید آزمایشش کنید و مشکلاتش رو برای رفع شدن داخل ویکی پارچ بفرستید.
🔗 https://forum.parchlinux.com/t/topic/354
@SohrabContents
🔗 https://forum.parchlinux.com/t/topic/354
@SohrabContents
Parch Linux
هوش مصنوعی جبیر، مدل دستیار پارچ
با درود خدمت شما عزیزان و کاربران عزیز توزیع پارچ. هوش مصنوعی جبیر اخیراً مدلی تحت عنوان دستیار پارچ (Parch Linux Assistant) اضافه کرده که بواسطه ویکی توزیع آرچ پاسخ شما عزیزان را میدهد. درحال حاضر، اگر میتوانید آن را آزمایش کنید و پیشنهادات و انتقاداتتان…
Forwarded from Ninja Learn | نینجا لرن
پست فردا درمورد لایه سومه (Network)
و مطمئنم که همتون خوشتون میاد از این لایه چیزای جذابی برای گفتن داره
و مطمئنم که همتون خوشتون میاد از این لایه چیزای جذابی برای گفتن داره
Forwarded from Ninja Learn | نینجا لرن
دوستانیم که تازه تشریف اوردید کانال (خیلی خوش اومدید ❤️)
حتما این دسته بندی کانال رو مطالعه کنید که از مطالب قبلی کانال استفاده ببرید 😉
حتما این دسته بندی کانال رو مطالعه کنید که از مطالب قبلی کانال استفاده ببرید 😉
Telegram
Ninja Learn | نینجا لرن
تا حالا کلی مطالب خفن و کاربردی تو کانال NinjaLearn براتون آماده کردیم و الان صدها مطلب مختلف و جذاب داریم.
از اونجایی که مطالب کانال خیلی متنوع و زیاد شده، تصمیم گرفتیم یه دستهبندی مرتب و منظم برای همهی پستها داشته باشیم تا شما عزیزان راحتتر بتونید…
از اونجایی که مطالب کانال خیلی متنوع و زیاد شده، تصمیم گرفتیم یه دستهبندی مرتب و منظم برای همهی پستها داشته باشیم تا شما عزیزان راحتتر بتونید…
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
This media is not supported in your browser
VIEW IN TELEGRAM
یک آموزش جدید درست کردم
تو این ویدیو یاد میگیریم چجوری با Docker Compose بتونیم MinIO رو داخل VPS ارزون خودمون بالا بیاریم و برای خودمون S3 Object Storage داشته باشیم.
بعدش یاد میگیریم چجوری داخل یک اپ Next.js به MinIO وصل بشیم و اول ازش یک Pre-Signed URL بگیریم بعدش مستقیم فایلمون رو داخل MinIO آپلود کنیم.
لینک ویدیو:
https://www.youtube.com/watch?v=UPygkumJc2A
لینک گیتهاب:
https://github.com/sesto-dev/next-minio-self-host
@DevTwitter | <Amirhossein Mohammadi/>
تو این ویدیو یاد میگیریم چجوری با Docker Compose بتونیم MinIO رو داخل VPS ارزون خودمون بالا بیاریم و برای خودمون S3 Object Storage داشته باشیم.
بعدش یاد میگیریم چجوری داخل یک اپ Next.js به MinIO وصل بشیم و اول ازش یک Pre-Signed URL بگیریم بعدش مستقیم فایلمون رو داخل MinIO آپلود کنیم.
لینک ویدیو:
https://www.youtube.com/watch?v=UPygkumJc2A
لینک گیتهاب:
https://github.com/sesto-dev/next-minio-self-host
@DevTwitter | <Amirhossein Mohammadi/>
Forwarded from Curious Geek ⚡️
درباب Cryptography و Steganography
علم Cryptography برای رمز کردن اطلاعات و حفظ محرمانگی آن هاست اما Steganography برای پنهان سازی وجود پیام است.
فرضا با استفاده از Cryptography پیامی را رمز می کنیم و کلید عمومی آن را با استفاده از Stenography در ثانیه ای مشخص از یک فایل MKV ویدیویی پنهان می کنیم.
🆔 @Hiradsajde
علم Cryptography برای رمز کردن اطلاعات و حفظ محرمانگی آن هاست اما Steganography برای پنهان سازی وجود پیام است.
فرضا با استفاده از Cryptography پیامی را رمز می کنیم و کلید عمومی آن را با استفاده از Stenography در ثانیه ای مشخص از یک فایل MKV ویدیویی پنهان می کنیم.
🆔 @Hiradsajde
Forwarded from Curious Geek ⚡️
برنامه ای بنویسید که دستگاهی با ده ها هزار متغیر را حل کند!
دستگاه های ریاضی با ماتریس های Reduced Row Echelon Form قابل حل هستند.
برای یک دستگاه دو ، سه متغیره شاید گزینه بهینه ای نباشه.
اما روی ساختار ماتریس، راحت تر میتونیم الگوریتم پیاده کنیم و میتونه برای حل یک دستگاه با بیش از چند هزار متغیر کاربردی باشه.
کاربرد اینکار در پیاده سازی الگوریتم های هوش مصنوعی است.
The Gaussian Elimination Algorithm
نمونه ای از این دسته الگوریتم ها است.
🔗 t.me/+SimCrguTIx1kNDQ0
🆔 @Hiradsajde
دستگاه های ریاضی با ماتریس های Reduced Row Echelon Form قابل حل هستند.
برای یک دستگاه دو ، سه متغیره شاید گزینه بهینه ای نباشه.
اما روی ساختار ماتریس، راحت تر میتونیم الگوریتم پیاده کنیم و میتونه برای حل یک دستگاه با بیش از چند هزار متغیر کاربردی باشه.
کاربرد اینکار در پیاده سازی الگوریتم های هوش مصنوعی است.
The Gaussian Elimination Algorithm
نمونه ای از این دسته الگوریتم ها است.
🔗 t.me/+SimCrguTIx1kNDQ0
🆔 @Hiradsajde
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 کدوم یک از فریم ورک های CSS در پروژه استفاده کنیم؟
دو فریم ورک معروف در دنیای CSS داریم: ۱- بوت استرپ (Bootstrap) ۲- تیلویند (TailwindCSS)
۱- بوت استرپ (Bootstrap) :
فریم ورک بوت استرپ رسپانسیو سازی و سرعت توسعه بالایی داره و هم سازگار با جاوا اسکریپت است. دارای سیستم گرید قدرتمند برای رسپانسیو سازی المان ها است و قابلیت شخصی سازی خوبی دارد. اگر در پروژه ای می خواهید مداوم تغییراتی اعمال کنید, فریم ورک بوت استرپ پیشنهاد می کنم که دردسرهای شخصی سازی با دستورات خاص برای اعمال کلاس ها را ندارید و دارای کامپوننتهای آماده است.
۲- تیلویند (TailwindCSS) :
با استفاده از تیلویند (Tailwind CSS) می توانید کلاسهای از پیش تعریف شده، به سرعت رابطهای کاربری سفارشی و واکنشگرا ایجاد کنید و رسپانسیو سازی و قابلیت های شخصی بالایی دارد و هم سازگار با جاوا اسکریپت است. اگر در پروژه تغییرات چندانی ندارد و نیازی به اعمال مداوم کلاس ها ندارید رو تیلویند (Tailwind CSS) پیشنهاد می کنم. اما یه سری ایراداتی هست که پیچیدگی در خوانایی کدهای HTML دارد و نیاز به تنظیمات اولیه, وابستگی به ابزارهای ساخت (Build Tools) مانند Webpack، PostCSS یا Vite برای اعمال کلاس ها و دستورات خاص دارید.
#CSS
@TheRaymondDev
دو فریم ورک معروف در دنیای CSS داریم: ۱- بوت استرپ (Bootstrap) ۲- تیلویند (TailwindCSS)
۱- بوت استرپ (Bootstrap) :
فریم ورک بوت استرپ رسپانسیو سازی و سرعت توسعه بالایی داره و هم سازگار با جاوا اسکریپت است. دارای سیستم گرید قدرتمند برای رسپانسیو سازی المان ها است و قابلیت شخصی سازی خوبی دارد. اگر در پروژه ای می خواهید مداوم تغییراتی اعمال کنید, فریم ورک بوت استرپ پیشنهاد می کنم که دردسرهای شخصی سازی با دستورات خاص برای اعمال کلاس ها را ندارید و دارای کامپوننتهای آماده است.
۲- تیلویند (TailwindCSS) :
با استفاده از تیلویند (Tailwind CSS) می توانید کلاسهای از پیش تعریف شده، به سرعت رابطهای کاربری سفارشی و واکنشگرا ایجاد کنید و رسپانسیو سازی و قابلیت های شخصی بالایی دارد و هم سازگار با جاوا اسکریپت است. اگر در پروژه تغییرات چندانی ندارد و نیازی به اعمال مداوم کلاس ها ندارید رو تیلویند (Tailwind CSS) پیشنهاد می کنم. اما یه سری ایراداتی هست که پیچیدگی در خوانایی کدهای HTML دارد و نیاز به تنظیمات اولیه, وابستگی به ابزارهای ساخت (Build Tools) مانند Webpack، PostCSS یا Vite برای اعمال کلاس ها و دستورات خاص دارید.
#CSS
@TheRaymondDev