قانون بِنفورد یا قانون رقم اول میگوید که در فهرست عددهایی که در بسیاری از (البته نه همهٔ) پدیدههای زندگی واقعی رخ میدهند، رقم اول عددها بهطور خاص و غیریکنواختی توزیع میشود. بر طبق این قانون، تقریباً در یکسوم موارد رقم نخست ۱ است، و عددهای بزرگتر در رقم نخست به ترتیب با بسامد کمتری رخ میدهند، و عدد ۹ کمتر از یک بار در هر بیست عدد ظاهر میشود.
علیرغم اینکه توزیع اعداد یا پدیدههای طبیعی معمولا از توزیع نرمال تبعیت میکنند رقم اول این اعداد از قانون بنفورد تبعیت میکنند. به بیان دیگر میتوان گفت که قانون بنفورد نوع دیگری از نمایش توزیع اعداد است که در آن اگر مجموعه اعدادی که رقم اول آنها ۱ و ۲ و ۳ و… است را کنار یکدیگر بگذاریم کل مجموعه را نمایش دادهایم.[۱] هرگاه که خود عددها بهطور لگاریتمی توزیع شده باشند، این توزیع رقمهای نخست منطقی خواهد بود. بنابر دلایلی، عددهایی که در سنجشهای واقعی ثبت میشوند، معمولاً توزیع لگاریتمی دارند.
این قانون به نام فرانک بنفورد فیزیکدان نامیده شدهاست، هرچند که پیش از آن سیمون نیوکام در سال ۱۸۸۱ آن را بیان کرده بود.
🔗 Telegram : (at)DeveloperManifest
علیرغم اینکه توزیع اعداد یا پدیدههای طبیعی معمولا از توزیع نرمال تبعیت میکنند رقم اول این اعداد از قانون بنفورد تبعیت میکنند. به بیان دیگر میتوان گفت که قانون بنفورد نوع دیگری از نمایش توزیع اعداد است که در آن اگر مجموعه اعدادی که رقم اول آنها ۱ و ۲ و ۳ و… است را کنار یکدیگر بگذاریم کل مجموعه را نمایش دادهایم.[۱] هرگاه که خود عددها بهطور لگاریتمی توزیع شده باشند، این توزیع رقمهای نخست منطقی خواهد بود. بنابر دلایلی، عددهایی که در سنجشهای واقعی ثبت میشوند، معمولاً توزیع لگاریتمی دارند.
این قانون به نام فرانک بنفورد فیزیکدان نامیده شدهاست، هرچند که پیش از آن سیمون نیوکام در سال ۱۸۸۱ آن را بیان کرده بود.
🔗 Telegram : (at)DeveloperManifest
Developer.manifest
قانون بِنفورد یا قانون رقم اول میگوید که در فهرست عددهایی که در بسیاری از (البته نه همهٔ) پدیدههای زندگی واقعی رخ میدهند، رقم اول عددها بهطور خاص و غیریکنواختی توزیع میشود. بر طبق این قانون، تقریباً در یکسوم موارد رقم نخست ۱ است، و عددهای بزرگتر در…
یک نمونه کد PHP برای بررسی این قانون :
تست آنلاین :
https://gist.github.com/saeedvir/0cdaf5de7e47d679638e8dd4905c082c
تست آنلاین :
https://onlinephp.io/c/956b24
🔗 Telegram : (at)DeveloperManifest
Developer.manifest
یک نمونه کد PHP برای بررسی این قانون : https://gist.github.com/saeedvir/0cdaf5de7e47d679638e8dd4905c082c تست آنلاین : https://onlinephp.io/c/956b24 🔗 Telegram : (at)DeveloperManifest
نمونه اجرای این قانون روی داده های قیمتی یک فروشگاه !
🔗 Telegram : (at)DeveloperManifest
{
"distribution": {
"1": {
"digit": 1,
"expected": 30.1,
"actual": 29.27,
"difference": -0.83
},
"2": {
"digit": 2,
"expected": 17.61,
"actual": 5.69,
"difference": -11.92
},
"3": {
"digit": 3,
"expected": 12.49,
"actual": 14.23,
"difference": 1.73
},
"4": {
"digit": 4,
"expected": 9.69,
"actual": 8.94,
"difference": -0.75
},
"5": {
"digit": 5,
"expected": 7.92,
"actual": 12.2,
"difference": 4.28
},
"6": {
"digit": 6,
"expected": 6.69,
"actual": 10.57,
"difference": 3.87
},
"7": {
"digit": 7,
"expected": 5.8,
"actual": 6.5,
"difference": 0.7
},
"8": {
"digit": 8,
"expected": 5.12,
"actual": 6.5,
"difference": 1.39
},
"9": {
"digit": 9,
"expected": 4.58,
"actual": 6.1,
"difference": 1.52
}
},
"deviation_score": 3
}🔗 Telegram : (at)DeveloperManifest
همیشه انتقال از نسخه های قدیمی به نسخه های جدید لاراول دردسرهای خودش رو داره
گروه توسعه لاراول Shift را معرفی کرد ولی اگر نخواهید از اون استفاده کنید راه حل ش
این ریپو هست
نسخه به نسخه باید پیش برید
👇
🔗 Telegram : (at)DeveloperManifest
گروه توسعه لاراول Shift را معرفی کرد ولی اگر نخواهید از اون استفاده کنید راه حل ش
این ریپو هست
نسخه به نسخه باید پیش برید
https://laravel-upgrade-helper.github.io/
👇
🔗 Telegram : (at)DeveloperManifest
سوال چالشی:
فرض کنید یک رشته حداقل پنج کارکتری دارید به صورت
abcde
ابتدا این رشته را به چهار قسمت تقسیم کند و در یک آرایه بریزید
بعد ایندکس های آرایه را به صورت تصادفی به هم بریزد
حالا روشی طراحی کنید که بعد از این به هم ریختن بتوانید دوباره این رشته را بازیابی کنید.
😁بیخیال هوش مصنوعی بشید لطفا !
پاسخ به زودی در کانال قرار میگیره پس زودتر دست به کار بشید.
#چالش
#چالش_یک
Telegram: (at)developer.manifest
فرض کنید یک رشته حداقل پنج کارکتری دارید به صورت
abcde
ابتدا این رشته را به چهار قسمت تقسیم کند و در یک آرایه بریزید
بعد ایندکس های آرایه را به صورت تصادفی به هم بریزد
حالا روشی طراحی کنید که بعد از این به هم ریختن بتوانید دوباره این رشته را بازیابی کنید.
😁بیخیال هوش مصنوعی بشید لطفا !
پاسخ به زودی در کانال قرار میگیره پس زودتر دست به کار بشید.
#چالش
#چالش_یک
Telegram: (at)developer.manifest
معرفی سرویس Context7
هدف از راه اندازی این سرویس ، ارائه داکیومنت و محتوا برای هوش مصنوعی و ایجنت های برنامه نویسی هست.
کافیه MCP سرور Context7 را روی ویرایشگر متن خودتون نصب کنید و برای راهنمایی ازش سوال کنید.
اطلاعات بیشتر در وبسایت Context7
✅ پیشنهاد می کنم در تکمیل این وبسایت مشارکت کنید
برای نمونه برای سه تا پکیج نوشته شده برای لاراول می تونید لینک های زیر رو ببینید :
به تب Chat برید و در رابطه با استفاده از این پکیج سوال کنید !
😎👇
@DeveloperManifest
هدف از راه اندازی این سرویس ، ارائه داکیومنت و محتوا برای هوش مصنوعی و ایجنت های برنامه نویسی هست.
کافیه MCP سرور Context7 را روی ویرایشگر متن خودتون نصب کنید و برای راهنمایی ازش سوال کنید.
اطلاعات بیشتر در وبسایت Context7
✅ پیشنهاد می کنم در تکمیل این وبسایت مشارکت کنید
برای نمونه برای سه تا پکیج نوشته شده برای لاراول می تونید لینک های زیر رو ببینید :
https://context7.com/saeedvir/shopping-cart
https://context7.com/saeedvir/laravel-permissions
https://context7.com/saeedvir/laravel-modular
به تب Chat برید و در رابطه با استفاده از این پکیج سوال کنید !
How do I install this library?
Based on the documentation, here's how to install the Laravel Shopping Cart library:
Install via Composer:
composer require saeedvir/shopping-cart
....
😎👇
@DeveloperManifest
🔥1
Developer.manifest
سوال چالشی: فرض کنید یک رشته حداقل پنج کارکتری دارید به صورت abcde ابتدا این رشته را به چهار قسمت تقسیم کند و در یک آرایه بریزید بعد ایندکس های آرایه را به صورت تصادفی به هم بریزد حالا روشی طراحی کنید که بعد از این به هم ریختن بتوانید دوباره این رشته را…
پاسخ #چالش_یک
در حقیقت بدون ذخیره کردن اطلاعات اصلا امکان به هم ریختن و بازیابی وجود نداره
پس میاییم اطلاعات ایندکس اطلاعات را به نحوی که قابل بازیابی باشه ذخیره می کنیم
روش اول :
1- تقسیم رشته به یک آرایه 4 تایی
2-ذخیره ایندکس ها و به هم ریختن آرایه
3-بازیابی آرایه جدید و تبدیل به رشته
روش دوم:
1- تقسیم رشته به یک آرایه 4 تایی
2-ذخیره ایندکس ها به صورت جداگانه (maping) و به هم ریختن آرایه
3-بازیابی آرایه جدید و تبدیل به رشته
روش سوم:
1- تقسیم رشته به یک آرایه 4 تایی
2-استفاده از الگوریتم "Fisher - Yates"
3-بازیابی آرایه جدید و تبدیل به رشته
کد این سه روش در گیت هاب ببینید :
😎👇
@DeveloperManifest
در حقیقت بدون ذخیره کردن اطلاعات اصلا امکان به هم ریختن و بازیابی وجود نداره
پس میاییم اطلاعات ایندکس اطلاعات را به نحوی که قابل بازیابی باشه ذخیره می کنیم
روش اول :
1- تقسیم رشته به یک آرایه 4 تایی
2-ذخیره ایندکس ها و به هم ریختن آرایه
3-بازیابی آرایه جدید و تبدیل به رشته
روش دوم:
1- تقسیم رشته به یک آرایه 4 تایی
2-ذخیره ایندکس ها به صورت جداگانه (maping) و به هم ریختن آرایه
3-بازیابی آرایه جدید و تبدیل به رشته
روش سوم:
1- تقسیم رشته به یک آرایه 4 تایی
2-استفاده از الگوریتم "Fisher - Yates"
3-بازیابی آرایه جدید و تبدیل به رشته
کد این سه روش در گیت هاب ببینید :
https://gist.github.com/saeedvir/b449c12aa68857c559e719fd15389b29
😎👇
@DeveloperManifest
🔥2
supabase-table-editor.webm
2.4 MB
پلتفرم Supabase در دستهی Backend-as-a-Service (BaaS) است که مجموعهی کاملی از ابزارها را برای توسعهدهندگان فراهم میکند تا بتوانند بهسرعت برنامههای مدرن بسازند.
پکیج لاراول کار با این سرویس :👇
نسخه FREE برای کارهای سبک کاملا جواب میده
😎👇@DeveloperManifest
پکیج لاراول کار با این سرویس :👇
https://news.1rj.ru/str/DeveloperManifest/35
نسخه FREE برای کارهای سبک کاملا جواب میده
https://supabase.com
😎👇@DeveloperManifest
Developer.manifest
supabase-table-editor.webm
🌐 ویژگیهای اصلی
پایگاه داده و APIها
پایگاه دادهی PostgreSQL به همراه PostgREST API برای ساخت فوری APIهای REST
پشتیبانی از GraphQL از طریق افزونهی pg_graphql
دارای قابلیت جستجوی تماممتنی (Full-text search)
احراز هویت (GoTrue)
سیستم احراز هویت داخلی با پشتیبانی از ورود با شبکههای اجتماعی
پشتیبانی از احراز هویت چندمرحلهای (MFA)
سازگار با ارائهدهندگان مختلف احراز هویت مانند Keycloak و OAuth
قابلیتهای بلادرنگ (Realtime)
همگامسازی دادهها بهصورت بلادرنگ
پشتیبانی از امنیت در سطح ردیف (Row-Level Security) برای اشتراکگذاری امن دادهها
مناسب برای برنامههای همزمان، مشارکتی و چندنفره (multiplayer)
فضای ذخیرهسازی (Storage)
مدیریت و ذخیرهسازی فایلها
یکپارچگی کامل با پایگاه داده
توابع بدون سرور (Serverless Functions)
اجرای Edge Functions برای منطق اختصاصی
مقیاسپذیری بالا برای پردازش سمت سرور
هوش مصنوعی و بردارها (pgvector)
پشتیبانی از بردارهای嵌ه برای کاربردهای هوش مصنوعی
اتصال به OpenAI و سرویسهای هوش مصنوعی دیگر
مناسب برای ساخت برنامههای مجهز به هوش مصنوعی (AI-powered)
تجربه توسعهدهنده (Developer Experience)
داشبورد گرافیکی برای مدیریت آسان
ابزار خط فرمان (CLI) برای توسعهی محلی
پشتیبانی از شاخههای پیشنمایش (Preview Branches) برای جریانهای کاری توسعه
زبان سرور PostgreSQL برای پشتیبانی بهتر در محیط IDE
🚀 چرا توسعهدهندگان از Supabase استفاده میکنند
بستهی کامل: تمام سرویسهای بکاند بهصورت یکپارچه در کنار هم کار میکنند
کاربرپسند: کاهش کارهای تکراری و پیچیدگی زیرساخت
مقیاسپذیر: توانایی رشد بدون نیاز به تغییرات سنگین
متنباز: قابلیت استقرار شخصی (Self-hosted) یا استفاده بهصورت سرویس ابری مدیریتشده
حفظ حریم خصوصی: سازگار با GDPR و دارای کنترلهای امنیتی قوی
این پروژه از حمایت مالی قابل توجهی (در قالب سرمایهگذاری سری A و B) برخوردار است و توسط شرکتهای زیادی برای ساخت برنامههای SaaS، ابزارهای مبتنی بر هوش مصنوعی، بازیهای چندنفره بلادرنگ و موارد دیگر استفاده میشود.
پایگاه داده و APIها
پایگاه دادهی PostgreSQL به همراه PostgREST API برای ساخت فوری APIهای REST
پشتیبانی از GraphQL از طریق افزونهی pg_graphql
دارای قابلیت جستجوی تماممتنی (Full-text search)
احراز هویت (GoTrue)
سیستم احراز هویت داخلی با پشتیبانی از ورود با شبکههای اجتماعی
پشتیبانی از احراز هویت چندمرحلهای (MFA)
سازگار با ارائهدهندگان مختلف احراز هویت مانند Keycloak و OAuth
قابلیتهای بلادرنگ (Realtime)
همگامسازی دادهها بهصورت بلادرنگ
پشتیبانی از امنیت در سطح ردیف (Row-Level Security) برای اشتراکگذاری امن دادهها
مناسب برای برنامههای همزمان، مشارکتی و چندنفره (multiplayer)
فضای ذخیرهسازی (Storage)
مدیریت و ذخیرهسازی فایلها
یکپارچگی کامل با پایگاه داده
توابع بدون سرور (Serverless Functions)
اجرای Edge Functions برای منطق اختصاصی
مقیاسپذیری بالا برای پردازش سمت سرور
هوش مصنوعی و بردارها (pgvector)
پشتیبانی از بردارهای嵌ه برای کاربردهای هوش مصنوعی
اتصال به OpenAI و سرویسهای هوش مصنوعی دیگر
مناسب برای ساخت برنامههای مجهز به هوش مصنوعی (AI-powered)
تجربه توسعهدهنده (Developer Experience)
داشبورد گرافیکی برای مدیریت آسان
ابزار خط فرمان (CLI) برای توسعهی محلی
پشتیبانی از شاخههای پیشنمایش (Preview Branches) برای جریانهای کاری توسعه
زبان سرور PostgreSQL برای پشتیبانی بهتر در محیط IDE
🚀 چرا توسعهدهندگان از Supabase استفاده میکنند
بستهی کامل: تمام سرویسهای بکاند بهصورت یکپارچه در کنار هم کار میکنند
کاربرپسند: کاهش کارهای تکراری و پیچیدگی زیرساخت
مقیاسپذیر: توانایی رشد بدون نیاز به تغییرات سنگین
متنباز: قابلیت استقرار شخصی (Self-hosted) یا استفاده بهصورت سرویس ابری مدیریتشده
حفظ حریم خصوصی: سازگار با GDPR و دارای کنترلهای امنیتی قوی
این پروژه از حمایت مالی قابل توجهی (در قالب سرمایهگذاری سری A و B) برخوردار است و توسط شرکتهای زیادی برای ساخت برنامههای SaaS، ابزارهای مبتنی بر هوش مصنوعی، بازیهای چندنفره بلادرنگ و موارد دیگر استفاده میشود.
یک پکیج برای Supabase منتشر کردم که می تونید از اون استفاده کنید
اطلاعات بیشتر در صفحه گیت هاب
وب سایت Supabase
😎👇@DeveloperManifest
composer require saeedvir/supabase
اطلاعات بیشتر در صفحه گیت هاب
وب سایت Supabase
😎👇@DeveloperManifest
❤1
یک ضعف امنیتی در
symfony/http-foundation
مشاهده شده است
لطفا هرچه سریعتر نسبت به بروزرسانی آن اقدام کنید
#باگ
#laravel
#laravel_security
#security
اطلاعات بیشتر در
😎👇
@developermanifest
symfony/http-foundation
مشاهده شده است
symfony/http-foundation
CVE-2025-64500: Incorrect parsing of PATH_INFO can lead to limited authorization | bypass
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-64500
https://symfony.com/blog/cve-2025-64500-incorrect-parsing-of-path-info-can-lead-to-limited-authorization-bypass
https://www.tenable.com/cve/CVE-2025-64500?utm_source=chatgpt.com
composer show symfony/http-foundation
composer update symfony/http-foundation
لطفا هرچه سریعتر نسبت به بروزرسانی آن اقدام کنید
#باگ
#laravel
#laravel_security
#security
اطلاعات بیشتر در
😎👇
@developermanifest
Developer.manifest
یک ضعف امنیتی در symfony/http-foundation مشاهده شده است symfony/http-foundation CVE-2025-64500: Incorrect parsing of PATH_INFO can lead to limited authorization | bypass https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-64500 https://symfony.com/blog/cve…
این باگ در کدام بخش اتفاق افتاده ؟
در فایل
که برای رفع این مشکل ، این کد
جایگزین شده است.
در فایل
src/Symfony/Component/HttpFoundation/Request.php Line : 1985
if (false === $pathInfo || '' === $pathInfo) {
// If substr() returns false then PATH_INFO is set to an empty string
return '/';
}که برای رفع این مشکل ، این کد
if (false === $pathInfo || '' === $pathInfo || '/' !== $pathInfo[0]) {
return '/'.$pathInfo;
}جایگزین شده است.
شاید وقت اون رسیده به فکر جایگزین برای JSON باشیم !
اخیرا فرمت TOON یا
Token-Oriented Object Notation
معرفی شده.
که حدود 40 درصد کاهش نسبت به json رو نشون میده.
اگر علاقه مند هستید :
😎👇 نمونه کد PHP کانال قرار گرفت
https://news.1rj.ru/str/DeveloperManifest
اخیرا فرمت TOON یا
Token-Oriented Object Notation
معرفی شده.
{
"users": [
{ "id": 1, "name": "Alice", "role": "admin" },
{ "id": 2, "name": "Bob", "role": "user" }
]
}users[2]{id,name,role}:
1,Alice,admin
2,Bob,userکه حدود 40 درصد کاهش نسبت به json رو نشون میده.
اگر علاقه مند هستید :
https://github.com/toon-format/toon
https://scalevise.com/json-toon-converter
😎👇 نمونه کد PHP کانال قرار گرفت
https://news.1rj.ru/str/DeveloperManifest
Developer.manifest
شاید وقت اون رسیده به فکر جایگزین برای JSON باشیم ! اخیرا فرمت TOON یا Token-Oriented Object Notation معرفی شده. { "users": [ { "id": 1, "name": "Alice", "role": "admin" }, { "id": 2, "name": "Bob", "role": "user" } ] } users[2]{id,name,role}:…
https://github.com/HelgeSverre/toon-php
https://github.com/matmper/php-toon/tree/main
https://github.com/toon-format/toon?tab=readme-ov-file#installation--quick-start
https://www.curiouslychase.com/playground/format-tokenization-exploration
چه طور در PowerShell دستورات خلاصه درست کنیم ؟
ابتدا پاورشل را باز کنید و دستور زیر را اجرا کنید :
سپس ئدر مسیر مشخص شده ، یک فایل ایجاد کنید
برای مثال :
حالا داخل این فایل عبارت زیر را وارد کنید :
فایل را ذخیره کنید.
حالا از پاورشل خارج شوید.
از این به بعد در هر پوشه پروژه لاراول می توانید دستور زیر را استفاده کنید :
😎👇
@developerManifest
ابتدا پاورشل را باز کنید و دستور زیر را اجرا کنید :
echo $PROFILE
سپس ئدر مسیر مشخص شده ، یک فایل ایجاد کنید
برای مثال :
C:\Users\YourName\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
حالا داخل این فایل عبارت زیر را وارد کنید :
function a {
& php .\artisan @args
}فایل را ذخیره کنید.
حالا از پاورشل خارج شوید.
از این به بعد در هر پوشه پروژه لاراول می توانید دستور زیر را استفاده کنید :
a optimize
a optimize:clear
a route:list
در حقیقت دستور a معادل php artisan هست.
😎👇
@developerManifest
🔥1
مقایسه حالتهای بارگذاری تصاویر
مرورگرها هنگام نمایش تصاویر، میتوانند از دو ویژگی مهم استفاده کنند:
1️⃣ ویژگی loading :
تعیین میکند تصویر کی و چگونه بارگذاری شود
حالت Lazy:
فقط وقتی تصویر به نزدیکی صفحه میآید بارگذاری میشود (صرفهجویی در پهنای باند).
حالت eager:
بلافاصله با بارگذاری صفحه، همه تصاویر شروع به دانلود میکنند.
2️⃣ ویژگی decoding
تعیین میکند تصویر چطور رمزگشایی شود
حالت sync :
مرورگر هنگام دریافت تصویر، رندر صفحه را متوقف میکند تا تصویر رمزگشایی شود.
حالت async:
رمزگشایی تصویر به صورت غیربلاککننده انجام میشود و رندر صفحه متوقف نمیشود.
به طور کلی 4 حالت داریم :
lazy + async:
✅ بهترین حالت برای گالریها و لیستهای طولانی
lazy + sync
مناسب برای صفحاتی با تعداد کم تصویر، اما کمی کندتر در اسکرول کردن صفحه
eager + async
خوب برای تصویر اصلی یا تصاویر مهم، اما برای ۲۰ تصویر همزمان سنگین میشود
eager + sync
⚠️ بدترین حالت برای عملکرد و اسکرول روان، فقط برای تصاویر تک و حیاتی استفاده شود
اطلاعات بیشتر در :😎👇
@DeveloperManifest
مرورگرها هنگام نمایش تصاویر، میتوانند از دو ویژگی مهم استفاده کنند:
1️⃣ ویژگی loading :
تعیین میکند تصویر کی و چگونه بارگذاری شود
حالت Lazy:
فقط وقتی تصویر به نزدیکی صفحه میآید بارگذاری میشود (صرفهجویی در پهنای باند).
حالت eager:
بلافاصله با بارگذاری صفحه، همه تصاویر شروع به دانلود میکنند.
2️⃣ ویژگی decoding
تعیین میکند تصویر چطور رمزگشایی شود
حالت sync :
مرورگر هنگام دریافت تصویر، رندر صفحه را متوقف میکند تا تصویر رمزگشایی شود.
حالت async:
رمزگشایی تصویر به صورت غیربلاککننده انجام میشود و رندر صفحه متوقف نمیشود.
به طور کلی 4 حالت داریم :
lazy + async:
✅ بهترین حالت برای گالریها و لیستهای طولانی
lazy + sync
مناسب برای صفحاتی با تعداد کم تصویر، اما کمی کندتر در اسکرول کردن صفحه
eager + async
خوب برای تصویر اصلی یا تصاویر مهم، اما برای ۲۰ تصویر همزمان سنگین میشود
eager + sync
⚠️ بدترین حالت برای عملکرد و اسکرول روان، فقط برای تصاویر تک و حیاتی استفاده شود
<img alt="" src="" decoding="async" loading="lazy">
اطلاعات بیشتر در :😎👇
@DeveloperManifest
Developer.manifest
مقایسه حالتهای بارگذاری تصاویر مرورگرها هنگام نمایش تصاویر، میتوانند از دو ویژگی مهم استفاده کنند: 1️⃣ ویژگی loading : تعیین میکند تصویر کی و چگونه بارگذاری شود حالت Lazy: فقط وقتی تصویر به نزدیکی صفحه میآید بارگذاری میشود (صرفهجویی در پهنای باند).…
codepen.io
Image Loading Benchmark
...
👍1
یک نمونه از استفاده از IF در CSS مدرن :
اطلاعات بیشتر در :😎👇
@DeveloperManifest
body {
background: if(
media(width > 850px): #9400D3; media(width > 700px): #4B0082;
media(width > 600px): #0000FF; media(width > 500px): #00FF00;
media(width > 400px): #FFFF00; media(width > 300px): #FF7F00;
else:
#ff0000
);
min-height: 100vh;
font-family: system-ui, -apple-system, sans-serif;
transition: background 0.3s ease;
}اطلاعات بیشتر در :😎👇
@DeveloperManifest
پکیج های Verta و morilog به سایت Context7 اضافه شد.
از این پس برای دریافت نمونه کد یا سوال در مورد این پکیج ها می تونید از آدرس های زیر استفاده کنید :
https://context7.com/hekmatinasser/verta?tab=chat
https://context7.com/morilog/jalali?tab=chat
برای مثال از هوش مصنوعی بخواهید یک نمونه از اعتبارسنجی تاریخ شمسی برای فرم ها به شما بدهد :
Basic Date Validation
Date Comparison Validation
اطلاعات بیشتر در :😎👇
@DeveloperManifest
از این پس برای دریافت نمونه کد یا سوال در مورد این پکیج ها می تونید از آدرس های زیر استفاده کنید :
https://context7.com/hekmatinasser/verta?tab=chat
https://context7.com/morilog/jalali?tab=chat
برای مثال از هوش مصنوعی بخواهید یک نمونه از اعتبارسنجی تاریخ شمسی برای فرم ها به شما بدهد :
Basic Date Validation
use Illuminate\Http\Request;
public function store(Request $request)
{
$validated = $request->validate([
'birthday' => ['required', 'jdate'],
'appointment' => ['required', 'jdatetime'],
]);
}
Date Comparison Validation
$request->validate([
'start_date' => ['required', 'jdate'],
'end_date' => ['required', 'jdate_after:' . $request->start_date],
'event_date' => ['required', 'jdate_before:1402-01-01'],
'registration' => ['required', 'jdate_after_equal:1401-01-01'],
'deadline' => ['required', 'jdate_before_equal:1401-12-29'],
]);
اطلاعات بیشتر در :😎👇
@DeveloperManifest