پکیج: dotenv-expand
احتمالاً با dotenv آشنا هستین، پکیجی که متغیرهای محیطی رو از فایل .env لود میکنه.
اما اگه بخوایم توی .env از یه متغیر داخل متغیر دیگه استفاده کنیم، dotenv بهصورت پیشفرض اینو ساپورت نمیکنه.
اینجا میتونیم از dotenv-expand استفاده کنیم.
اینجا از APP_NAME تونستیم توی یک متغیر دیگه هم استفاده کنیم. فقط توی کد باید کد زیر رو اضافه کنیم:
تمیزی و نظم فایل .env رو زیاد میکنه و جلوی تکرار بی مورد رو میگیره.
برای پروژههای چندمحیطی (dev, staging, prod) عالیه.
نیاز به تغییر در dotenv اصلی نداره.
احتمالاً با dotenv آشنا هستین، پکیجی که متغیرهای محیطی رو از فایل .env لود میکنه.
اما اگه بخوایم توی .env از یه متغیر داخل متغیر دیگه استفاده کنیم، dotenv بهصورت پیشفرض اینو ساپورت نمیکنه.
اینجا میتونیم از dotenv-expand استفاده کنیم.
APP_NAME=My-Project
APP_PATH=/var/www/${APP_NAME}
اینجا از APP_NAME تونستیم توی یک متغیر دیگه هم استفاده کنیم. فقط توی کد باید کد زیر رو اضافه کنیم:
import dotenv from "dotenv";
import dotenvExpand from "dotenv-expand";
const env = dotenv.config();
dotenvExpand.expand(env);
console.log(process.env.APP_PATH); // /var/www/My-Project
تمیزی و نظم فایل .env رو زیاد میکنه و جلوی تکرار بی مورد رو میگیره.
برای پروژههای چندمحیطی (dev, staging, prod) عالیه.
نیاز به تغییر در dotenv اصلی نداره.
👍1
بک اند یاد بگیرم یا نه ؟
روی صحبتم با کسایی هست که چندسالی تجربه موفق توی فرانت اند داشتن :
خیلی ها اعتقاد دارن باید یه مهارت رو یاد گرفت و توی همون عمیق شد و تا تهش رفت , تا حدی درسته اما دنیای وب خیلی گستردس خصوصا برای کسی که عاشقه کدنوشتن هستش و برنامه نویسی رو فقط به چشم یه شغل نگاه نمیکنه
به نظر من وقتی فرانت بلدی یاد گیری بک اند واست هم راحت تر میشه و هم دیده بهتری بهت میده خصوصا اگر زبان عوض نکنی و یه چیزی مثل node ,express یادبگیری
اگر فرانتاند کار هستی، یه روزی وقت بذار و سمت سرور رو هم کشف کن, قول میدم طرز نگاهت به کد برای همیشه تغییر کنه.
وقتی یادگیری بکاند رو شروع کردم، فکر میکردم فقط قراره با دیتابیس و API سروکار داشته باشم.
ولی چیزی که واقعاً یاد گرفتم، تفکر سیستمی بود.
حالا وقتی کد فرانتاند مینویسم، بهتر میفهمم درخواستها از کجا میان، چرا باید بهینه باشن، و چطور یه تصمیم ساده توی UI میتونه روی Performance سرور تأثیر بذاره.
یادگیری بکاند برای من فقط یه مهارت جدید نبود؛ یه زاویه دید تازه بود به دنیای برنامهنویسی.
Kamyar Kamazani
روی صحبتم با کسایی هست که چندسالی تجربه موفق توی فرانت اند داشتن :
خیلی ها اعتقاد دارن باید یه مهارت رو یاد گرفت و توی همون عمیق شد و تا تهش رفت , تا حدی درسته اما دنیای وب خیلی گستردس خصوصا برای کسی که عاشقه کدنوشتن هستش و برنامه نویسی رو فقط به چشم یه شغل نگاه نمیکنه
به نظر من وقتی فرانت بلدی یاد گیری بک اند واست هم راحت تر میشه و هم دیده بهتری بهت میده خصوصا اگر زبان عوض نکنی و یه چیزی مثل node ,express یادبگیری
اگر فرانتاند کار هستی، یه روزی وقت بذار و سمت سرور رو هم کشف کن, قول میدم طرز نگاهت به کد برای همیشه تغییر کنه.
وقتی یادگیری بکاند رو شروع کردم، فکر میکردم فقط قراره با دیتابیس و API سروکار داشته باشم.
ولی چیزی که واقعاً یاد گرفتم، تفکر سیستمی بود.
حالا وقتی کد فرانتاند مینویسم، بهتر میفهمم درخواستها از کجا میان، چرا باید بهینه باشن، و چطور یه تصمیم ساده توی UI میتونه روی Performance سرور تأثیر بذاره.
یادگیری بکاند برای من فقط یه مهارت جدید نبود؛ یه زاویه دید تازه بود به دنیای برنامهنویسی.
Kamyar Kamazani
👍3
اگه از Toastها برای نمایش پیامها استفاده میکنی و دنبال یه ابزار سبک، خوشاستایل و راحتی، react-hot-toast یکی از بهترین انتخابهاست.
طراحی مینیمال و جذابی داره. قابل شخصیسازی هست. وابستگیهای سنگین هم نداره. از همه مهمتر JSX Content هم پشتیبانی میکنه.
https://react-hot-toast.com/
طراحی مینیمال و جذابی داره. قابل شخصیسازی هست. وابستگیهای سنگین هم نداره. از همه مهمتر JSX Content هم پشتیبانی میکنه.
https://react-hot-toast.com/
👍3
Why does this Timer component cause a memory leak?
Anonymous Quiz
15%
setCount is wrong inside interval
2%
React can’t handle intervals
70%
Needs to use setInterval in useEffect
13%
See Answer
نظر نامحبوب:
تو مصاحبه های کاری متاسفانه تو اکثر موارد شما باید بازیگر و دروغ گوی خوبی باشین وگرنه ریجکت میشین. اگه همیشه بخواین صادق باشین جواب نمیده اونم تو دنیای فعلی و باید تا حدی اغراق کنین.
تو مصاحبه های کاری متاسفانه تو اکثر موارد شما باید بازیگر و دروغ گوی خوبی باشین وگرنه ریجکت میشین. اگه همیشه بخواین صادق باشین جواب نمیده اونم تو دنیای فعلی و باید تا حدی اغراق کنین.
👍10
ا framer-motion چیست؟
کتابخانهای برای ساخت انیمیشن در React که هم سادهست، هم دقیق.
در واقع، framer-motion جایگزین قدرتمندیه برای CSS animation و transition،
با این تفاوت که کنترل کاملی روی state و eventهای React داریم.
https://motion.dev/
کتابخانهای برای ساخت انیمیشن در React که هم سادهست، هم دقیق.
در واقع، framer-motion جایگزین قدرتمندیه برای CSS animation و transition،
با این تفاوت که کنترل کاملی روی state و eventهای React داریم.
https://motion.dev/
وقتی مدیر بد داری
مدیر بد همیشه فکر میکنه مشکل از آدمهاست، نه از فرایند.
اگر چیزی درست پیش نره، دنبال مقصر میگرده نه دلیل.
و برعکس هر موفقیتی رو نتیجهی “مدیریتش” میدونه، نه کار تیم.
چنین فضایی باعث میشه تیم ساکت بشه.
کسی دیگه ایده نمیده، کسی اشتباه رو اعلام نمیکنه، چون میدونه قراره متهم بشه.
و اینجاست که تیم دلسرد میشه و یکییکی اعضا میرن از شرکت.
مدیر بد همیشه فکر میکنه مشکل از آدمهاست، نه از فرایند.
اگر چیزی درست پیش نره، دنبال مقصر میگرده نه دلیل.
و برعکس هر موفقیتی رو نتیجهی “مدیریتش” میدونه، نه کار تیم.
چنین فضایی باعث میشه تیم ساکت بشه.
کسی دیگه ایده نمیده، کسی اشتباه رو اعلام نمیکنه، چون میدونه قراره متهم بشه.
و اینجاست که تیم دلسرد میشه و یکییکی اعضا میرن از شرکت.
👍7
چرا React 19 یک نقطهی مهم در تحول این کتابخانه است:
1. کد خواناتر و تمیزتر: با حذف بسیاری از هوکهای پراستفاده و نیاز کمتر به مدیریت دستی state، ساختار کد سادهتر و قابلدرکتر میشود.
2. کاهش کدهای تکراری: حجم کدی که مینویسید کمتر است، اما قابلیتهایی که دریافت میکنید بیشتر.
3. بهبود عملکرد: معماری جدید باعث کاهش رندرهای غیرضروری و روانتر شدن اجرای برنامه میشود.
4. تجربه بهتر برای توسعهدهنده: تمرکز شما از مدیریت وضعیتهای async برداشته میشود و میتوانید روی ساخت قابلیتهای اصلی تمرکز کنید.
ا React 19 تلاش میکند فرایند توسعه را سادهتر کند، مخصوصاً در بخشهایی مثل مدیریت دادههای async. هوک جدید use() امکان کار با عملیاتهای async را طبیعیتر و سادهتر فراهم میکند، پیچیدگی کد را کاهش میدهد و روند توسعه را کارآمدتر میکن
1. کد خواناتر و تمیزتر: با حذف بسیاری از هوکهای پراستفاده و نیاز کمتر به مدیریت دستی state، ساختار کد سادهتر و قابلدرکتر میشود.
2. کاهش کدهای تکراری: حجم کدی که مینویسید کمتر است، اما قابلیتهایی که دریافت میکنید بیشتر.
3. بهبود عملکرد: معماری جدید باعث کاهش رندرهای غیرضروری و روانتر شدن اجرای برنامه میشود.
4. تجربه بهتر برای توسعهدهنده: تمرکز شما از مدیریت وضعیتهای async برداشته میشود و میتوانید روی ساخت قابلیتهای اصلی تمرکز کنید.
ا React 19 تلاش میکند فرایند توسعه را سادهتر کند، مخصوصاً در بخشهایی مثل مدیریت دادههای async. هوک جدید use() امکان کار با عملیاتهای async را طبیعیتر و سادهتر فراهم میکند، پیچیدگی کد را کاهش میدهد و روند توسعه را کارآمدتر میکن
👍2
مهارت گوش دادن فعال (Active Listening)
بیشتر وقتها فکر میکنیم داریم گوش میدیم، ولی در واقع فقط منتظریم نوبت حرف زدنمون برسه.
گوش دادن فعال یعنی واقعاً بخوای حرف طرف مقابل رو بفهمی، نه اینکه فقط جواب بدی.
تو محیط کاری — مخصوصاً تو تیمهای فنی — خیلی وقتا اختلافها از همینجا شروع میشن:
یکی حس میکنه کسی بهش گوش نمیده، ایدهش نادیده گرفته میشه، یا بدتر، قبل از اینکه توضیح بده، بقیه قضاوت میکنن.
تمرینش سادهست:
وقتی کسی حرف میزنه، سعی کن فقط گوش بدی، بدون اینکه وسطش چیزی بگی یا تو ذهنت جواب آماده کنی.
بعد از تموم شدنش، خلاصهی چیزی که گفت رو با لحن خودت تکرار کن تا مطمئن شی درست فهمیدی.
همین یه کار کوچیک میتونه کلی از تنشها و سوءتفاهمهای تیمی رو از بین ببره.
بیشتر وقتها فکر میکنیم داریم گوش میدیم، ولی در واقع فقط منتظریم نوبت حرف زدنمون برسه.
گوش دادن فعال یعنی واقعاً بخوای حرف طرف مقابل رو بفهمی، نه اینکه فقط جواب بدی.
تو محیط کاری — مخصوصاً تو تیمهای فنی — خیلی وقتا اختلافها از همینجا شروع میشن:
یکی حس میکنه کسی بهش گوش نمیده، ایدهش نادیده گرفته میشه، یا بدتر، قبل از اینکه توضیح بده، بقیه قضاوت میکنن.
تمرینش سادهست:
وقتی کسی حرف میزنه، سعی کن فقط گوش بدی، بدون اینکه وسطش چیزی بگی یا تو ذهنت جواب آماده کنی.
بعد از تموم شدنش، خلاصهی چیزی که گفت رو با لحن خودت تکرار کن تا مطمئن شی درست فهمیدی.
همین یه کار کوچیک میتونه کلی از تنشها و سوءتفاهمهای تیمی رو از بین ببره.
ایلان ماسک میخواد نور خورشید رو کم و زیاد کنه!
ایلان ماسک دوباره با یه ایده عجیب و جنجالی برگشته ، میخواد با یه ناوگان از ماهوارههای خورشیدی مبتنی بر هوش مصنوعی، تابش خورشید به زمین رو کم کنه تا جلوی گرمایش جهانی گرفته بشه!
به گفته خودش، حتی اگه فقط بخش کوچیکی از نور خورشید کنترل بشه، میتونه روند افزایش دمای زمین رو متوقف کنه.در واقع داره از یه پروژه به اسم مهندسی خورشیدی آبوهوا حرف میزنه.
+ یعنی دستکاری مستقیم تعادل حرارتی زمین با فناوری...
ایلان ماسک دوباره با یه ایده عجیب و جنجالی برگشته ، میخواد با یه ناوگان از ماهوارههای خورشیدی مبتنی بر هوش مصنوعی، تابش خورشید به زمین رو کم کنه تا جلوی گرمایش جهانی گرفته بشه!
به گفته خودش، حتی اگه فقط بخش کوچیکی از نور خورشید کنترل بشه، میتونه روند افزایش دمای زمین رو متوقف کنه.در واقع داره از یه پروژه به اسم مهندسی خورشیدی آبوهوا حرف میزنه.
+ یعنی دستکاری مستقیم تعادل حرارتی زمین با فناوری...
باگ امنیتی با الویت (HIGH) برای لاراول...
دوستانی که از لاراول استفاده میکنن باگی در تاریخ 2025-11-12برای پکیج symfony/http-foundation گزارش شده که ریسک امنیتی bypass authorization داره به عبارتی در سمفونی PATH_INFO رو به صورت اشتباه parse میکنه و این باعث شده تو برخی پروژه ها کاربر به مسیر یا اکشنی دسترسی داشته باشه که نباید داشته باشه به طور معمول
جهت رفع این باگ دستور زیر رو بزنید
composer update symfony/http-foundation
یا اینکه کافیه فقط دستور
composer update رو بزنید لاراول به طور پیشفرض نسخه صحیح رو میاره
Nima Hamdi
دوستانی که از لاراول استفاده میکنن باگی در تاریخ 2025-11-12برای پکیج symfony/http-foundation گزارش شده که ریسک امنیتی bypass authorization داره به عبارتی در سمفونی PATH_INFO رو به صورت اشتباه parse میکنه و این باعث شده تو برخی پروژه ها کاربر به مسیر یا اکشنی دسترسی داشته باشه که نباید داشته باشه به طور معمول
جهت رفع این باگ دستور زیر رو بزنید
composer update symfony/http-foundation
یا اینکه کافیه فقط دستور
composer update رو بزنید لاراول به طور پیشفرض نسخه صحیح رو میاره
Nima Hamdi