بالاخره Laravel از ابزار جدید خودش به نام Nightwatch رونمایی کرد!
ابزار Nightwatch یک ابزار مانیتورینگ داخلی برای اپلیکیشنهای لاراول هست که به شما امکان میده وضعیت سرویسها، پایگاهدادهها، سرورها و سایر اجزای حیاتی سیستم رو زیر نظر داشته باشید — و در صورت بروز مشکل، بهصورت خودکار هشدار دریافت کنید.
قابلیتهایی که Nightwatch ارائه میده:
بررسی سلامت دیتابیس، queue، حافظه، فضای دیسک و…
تعریف مانیتورهای سفارشی برای اپلیکیشن خودتون
دریافت نوتیفیکیشن از طریق ایمیل، Slack، یا دیگر کانالهای هشدار
نصب و راهاندازی ساده با پشتیبانی کامل از Laravel Forge
این ابزار مستقیماً در دل اکوسیستم لاراول قرار گرفته و برای تیمهایی که میخوان بدون نیاز به ابزارهای خارجی مثل New Relic یا Datadog، مانیتورینگ اختصاصی و سبکی برای پروژهشون داشته باشن، گزینه بسیار خوبیـه.
خودم فعلا اینترنت درست درمون ندارم. بعد از اینکه تونستم تستش کنم تجربم رو باهاتون به اشتراک میذارم. شما هم اگه تونستید باهاش کار کنید تجربتون رو به اشتراک بذارید.
مستندات و معرفی کامل:
https://nightwatch.laravel.com/
@DevTwitter | <Majid Vahidkhoo/>
ابزار Nightwatch یک ابزار مانیتورینگ داخلی برای اپلیکیشنهای لاراول هست که به شما امکان میده وضعیت سرویسها، پایگاهدادهها، سرورها و سایر اجزای حیاتی سیستم رو زیر نظر داشته باشید — و در صورت بروز مشکل، بهصورت خودکار هشدار دریافت کنید.
قابلیتهایی که Nightwatch ارائه میده:
بررسی سلامت دیتابیس، queue، حافظه، فضای دیسک و…
تعریف مانیتورهای سفارشی برای اپلیکیشن خودتون
دریافت نوتیفیکیشن از طریق ایمیل، Slack، یا دیگر کانالهای هشدار
نصب و راهاندازی ساده با پشتیبانی کامل از Laravel Forge
این ابزار مستقیماً در دل اکوسیستم لاراول قرار گرفته و برای تیمهایی که میخوان بدون نیاز به ابزارهای خارجی مثل New Relic یا Datadog، مانیتورینگ اختصاصی و سبکی برای پروژهشون داشته باشن، گزینه بسیار خوبیـه.
خودم فعلا اینترنت درست درمون ندارم. بعد از اینکه تونستم تستش کنم تجربم رو باهاتون به اشتراک میذارم. شما هم اگه تونستید باهاش کار کنید تجربتون رو به اشتراک بذارید.
مستندات و معرفی کامل:
https://nightwatch.laravel.com/
@DevTwitter | <Majid Vahidkhoo/>
یک خطا، یک درس مهم در NestJS + TypeORM
جدیدا با داداشمون نست جی اس آشنا شدم خیلی مرده هااااا
یعنی شما یک پارچه آقا رو در این فریمورک میبینید ولاغیر دوستان من
حالا بیاین یه مشکل کوچیک که من بهش برخورد کردم رو هم یه نگاهی بندازیم شما بدونین دیگه بهش بر نخورید
متن ارور به شرح زیر بود :
EntityMetadataNotFoundError: No metadata for "Task" was found.
ترجمه ساده خطا:
"من نمیدونم موجودیتی به اسم Task چیه! تو گفتی باهاش کار کنم، ولی هیچ متادیتایی ازش ندارم."
دلیل خطا:
در فایل app.module.ts فراموش کرده بودم موجودیتهام رو به TypeORM معرفی کنم. چون آرایه entities خالی مونده بود، TypeORM نتونست فایل task.entity.ts رو شناسایی کنه.
راهحل حرفهایتر:
به جای اضافه کردن دستی هر entity، از گزینه autoLoadEntities: true استفاده کردم. این تنظیم باعث میشه هر موجودیتی که با TypeOrmModule.forFeature() ثبت شده، خودش به صورت خودکار لود بشه.
با این کار، هم خطا برطرف شد، هم ساختار پروژه مقیاسپذیرتر و تمیزتر شد.
@DevTwitter | <Abolfazl Javadnia/>
جدیدا با داداشمون نست جی اس آشنا شدم خیلی مرده هااااا
یعنی شما یک پارچه آقا رو در این فریمورک میبینید ولاغیر دوستان من
حالا بیاین یه مشکل کوچیک که من بهش برخورد کردم رو هم یه نگاهی بندازیم شما بدونین دیگه بهش بر نخورید
متن ارور به شرح زیر بود :
EntityMetadataNotFoundError: No metadata for "Task" was found.
ترجمه ساده خطا:
"من نمیدونم موجودیتی به اسم Task چیه! تو گفتی باهاش کار کنم، ولی هیچ متادیتایی ازش ندارم."
دلیل خطا:
در فایل app.module.ts فراموش کرده بودم موجودیتهام رو به TypeORM معرفی کنم. چون آرایه entities خالی مونده بود، TypeORM نتونست فایل task.entity.ts رو شناسایی کنه.
راهحل حرفهایتر:
به جای اضافه کردن دستی هر entity، از گزینه autoLoadEntities: true استفاده کردم. این تنظیم باعث میشه هر موجودیتی که با TypeOrmModule.forFeature() ثبت شده، خودش به صورت خودکار لود بشه.
با این کار، هم خطا برطرف شد، هم ساختار پروژه مقیاسپذیرتر و تمیزتر شد.
@DevTwitter | <Abolfazl Javadnia/>
گوگل یه ابزار منتشر کرده که واقعا عجیب غریبه!
به ریپوی کد شما متصل میشه، اون رو در یک ماشین مجازی ابری دیپلوی می کنه، درخواست های شما رو به task تبدیل می کنه و بعد از اینکه تایید شما رو گرفت کد میزنه و در نهایت در قالب pr تحویل میده تا بتونید بررسی کنید!
توی این ویدیو این ابزار رو به صورت عملی بررسی کردم:
https://www.youtube.com/watch?v=zbBXS69-lNA
@DevTwitter | <Saleh Hashemi/>
به ریپوی کد شما متصل میشه، اون رو در یک ماشین مجازی ابری دیپلوی می کنه، درخواست های شما رو به task تبدیل می کنه و بعد از اینکه تایید شما رو گرفت کد میزنه و در نهایت در قالب pr تحویل میده تا بتونید بررسی کنید!
توی این ویدیو این ابزار رو به صورت عملی بررسی کردم:
https://www.youtube.com/watch?v=zbBXS69-lNA
@DevTwitter | <Saleh Hashemi/>
چند وقت پیش رو یه چیزی ما کار کرده بودیم برای مدیریت تسک ها و یادداشت ها و ... اوپن سورس هست راحت هم میشه دست کاریش کرد
برای اعضا تیم خودمون درست کرده بودیم تا بتونن کاراشون رو مدیریت کنن
ولی شاید بدرد بقیه هم بخوره
https://github.com/aturzone/TaskSphere
@DevTwitter | <Atur/>
برای اعضا تیم خودمون درست کرده بودیم تا بتونن کاراشون رو مدیریت کنن
ولی شاید بدرد بقیه هم بخوره
https://github.com/aturzone/TaskSphere
@DevTwitter | <Atur/>
توی این شرایط جنگی، یه ابزار خوب پیدا کردم برای ریسرچ و تحقیق. میشه لوکال ران کرد و از طریق API به مدل زبانی مورد نظرتون وصل میشه. اجراش کردم و بنظرم ابزار ارزشمندیه. لینکش رو میذارم شاید بدردتون خورد:
https://github.com/bytedance/deer-flow
@DevTwitter | <Mori/>
https://github.com/bytedance/deer-flow
@DevTwitter | <Mori/>
This media is not supported in your browser
VIEW IN TELEGRAM
دکمه اشتراک گذاری در شبکه های اجتماعی (Social Media Sharing Button)
درباره
یک کامپوننت خلاقانه و تعاملی برای نمایش لینکهای شبکههای اجتماعی با طراحی مدرن و انیمیشن جذاب. این پروژه با HTML و CSS ساخته شده و مناسب استفاده در صفحات پروفایل، کارتهای معرفی یا پروژههای شخصی است.
ویژگیها
- طراحی کارت با اطلاعات توسعهدهنده
- دکمه اشتراکگذاری با افکت انیمیشنی زیبا
- پشتیبانی از انواع شبکههای اجتماعی
- افکت Hover با ظاهر شدن تدریجی آیکونها
- طراحی ریسپانسیو
- استفاده از RemixIcon و فونت Google (Montserrat)
تکنولوژیها
این پروژه با استفاده از تکنولوژیهای زیر توسعه داده شده:
- HTML5
- CSS3
- Google Fonts (Montserrat)
- Remix Icon CDN
- CSS Variables
- CSS Transitions & Transformations
لینک مخزن گیتهاب:
https://github.com/KEANU2003/Social-Media-Button
@DevTwitter | <Kian Mahmoudi/>
درباره
یک کامپوننت خلاقانه و تعاملی برای نمایش لینکهای شبکههای اجتماعی با طراحی مدرن و انیمیشن جذاب. این پروژه با HTML و CSS ساخته شده و مناسب استفاده در صفحات پروفایل، کارتهای معرفی یا پروژههای شخصی است.
ویژگیها
- طراحی کارت با اطلاعات توسعهدهنده
- دکمه اشتراکگذاری با افکت انیمیشنی زیبا
- پشتیبانی از انواع شبکههای اجتماعی
- افکت Hover با ظاهر شدن تدریجی آیکونها
- طراحی ریسپانسیو
- استفاده از RemixIcon و فونت Google (Montserrat)
تکنولوژیها
این پروژه با استفاده از تکنولوژیهای زیر توسعه داده شده:
- HTML5
- CSS3
- Google Fonts (Montserrat)
- Remix Icon CDN
- CSS Variables
- CSS Transitions & Transformations
لینک مخزن گیتهاب:
https://github.com/KEANU2003/Social-Media-Button
@DevTwitter | <Kian Mahmoudi/>
Forwarded from DevTwitter Ads.
تخفیف بزرگ اسکیلکمپهای دانشکار 🎉
🔴 از ۷۰ تا ۹۰ درصد تخفیف ویژه
◀️ یک مهارت جدید و کاربردی رو با کمترین قیمت یاد بگیر:
Python
Docker
GIT
PowerBI
NextJS
Prompt Engineering
Soft-Skills
مشاهده و ثبتنام👇
https://dnkr.ir/kv7e4
🔴 از ۷۰ تا ۹۰ درصد تخفیف ویژه
◀️ یک مهارت جدید و کاربردی رو با کمترین قیمت یاد بگیر:
Python
Docker
GIT
PowerBI
NextJS
Prompt Engineering
Soft-Skills
مشاهده و ثبتنام👇
https://dnkr.ir/kv7e4
آپدیت جدید Textfx منتشر شد (نسخه ۲.۱.۰)
از این به بعد میتونی یه لودینگ خفن و قابل تنظیم به برنامههای ترمینالیات اضافه کنی.
انیمیشنهای نرم، تنظیمات دلخواه، بدون دردسر.
نصبش کن:
pip install --upgrade textfx
گیتهاب: http://github.com/iliakarimi/textfx
@DevTwitter | <Ilia/>
از این به بعد میتونی یه لودینگ خفن و قابل تنظیم به برنامههای ترمینالیات اضافه کنی.
انیمیشنهای نرم، تنظیمات دلخواه، بدون دردسر.
نصبش کن:
pip install --upgrade textfx
گیتهاب: http://github.com/iliakarimi/textfx
@DevTwitter | <Ilia/>
این رو زمانی نوشتم که پروژه رو تحویل دادم ولی هنوز تسویه نکرده بودن
گفتن بدید کد رو بعد تسویه میشه
میتونید باهاش کد های فست ای پی ایتون رو کامپایل کنید
بعد اگر مثل من به مشکل خوردید حداقل دستتون پر باشه!
نه اینکه کد کامل دست کارفرما باشه
https://github.com/mohammadhasananisi/compile_fastapi
@DevTwitter | <Mohammad Hasan/>
گفتن بدید کد رو بعد تسویه میشه
میتونید باهاش کد های فست ای پی ایتون رو کامپایل کنید
بعد اگر مثل من به مشکل خوردید حداقل دستتون پر باشه!
نه اینکه کد کامل دست کارفرما باشه
https://github.com/mohammadhasananisi/compile_fastapi
@DevTwitter | <Mohammad Hasan/>
مدت ها پیش یک دونه کتابخونه (فریم ورک) برای کار راحت تر با ربات های تلگرام در سی شارپ نوشته بودم که اواخر (به دلیل یه دونه درخواست ادامه) یکم بیشتر روش کار کردم و کلا به نظرم حداقل روی برگه پروژه جالبیه.
سورس پروژه در گیتهاب:
https://github.com/TelegramUpdater/TelegramUpdater
پروژه بر پایه رایج ترین کتابخونه ربات های تلگرام در سی شارپ یعنی Telegram.Bot نوشته شده و داخل لیست فریمورک های این کتابخونه هم اسمش اومده
https://github.com/TelegramBots/Telegram.Bot/wiki
البته که هنوز خیلی کار داره، اگر علاقه متد بودید یه نگاه بندازید و یا حتی در توسعش کمک بدید.
@DevTwitter | <immmdreza/>
سورس پروژه در گیتهاب:
https://github.com/TelegramUpdater/TelegramUpdater
پروژه بر پایه رایج ترین کتابخونه ربات های تلگرام در سی شارپ یعنی Telegram.Bot نوشته شده و داخل لیست فریمورک های این کتابخونه هم اسمش اومده
https://github.com/TelegramBots/Telegram.Bot/wiki
البته که هنوز خیلی کار داره، اگر علاقه متد بودید یه نگاه بندازید و یا حتی در توسعش کمک بدید.
@DevTwitter | <immmdreza/>
Forwarded from DevTwitter Ads.
کانال گروه مهاجرتی شریفی منش رو براتون میذارم، اگر قصد مهاجرت تحصیلی دارید، برای دونستن زمانبندیها، نکات مهم و هزینهها عضوش بشید.
@Sharifi_Manesh
@Sharifi_Manesh
Telegram
گروه مهاجرتی «شریفیمنش»
ربات وقت سفارت آمریکا ᴮᵉˢᵗ ، مشاوره، پرداختهای ارزی و...
شماره ثبت ۱۶۳۳۲۴۷۵ در انگلستان
مشاهده اینماد:
💻 SharifiManesh.com
☎️ 021-222 43 777
💎 @Sharifi_Manesh_Support
شماره ثبت ۱۶۳۳۲۴۷۵ در انگلستان
مشاهده اینماد:
💻 SharifiManesh.com
☎️ 021-222 43 777
💎 @Sharifi_Manesh_Support
افزودن به سبد خرید» کجای پروژه باید انجام بشه؟
فرانت یا بکاند؟ یا هر دو؟
این سوال ظاهراً ساده، ولی پشتش معماری، UX و حتی امنیته.
گزینه اول: همهچی سمت فرانت (مثلاً فقط توی localStorage)
خوبه چون:
خیلی سریع اجرا میشه
کاربر حس "لگ" نمیگیره
ترافیک سرور هم کمتره
بدیهاش:
موجودی واقعی محصول چک نمیشه
سبد خرید بین دستگاهها همگام نیست
قیمتها ممکنه outdated باشن
گزینه دوم: هر بار تغییر → درخواست به بکاند
خوبه چون:
همهچیز همیشه دقیق و روی دیتابیسه
امکان تحلیل و گزارشگیری بهتره
ولی:
تجربه کاربری کند میشه
هر کلیک، یه درخواست جدید!
راه حل حرفهای: ترکیب جفتش با Optimistic UI
- کاربر روی "Add to cart" کلیک میکنه
- آیتم فوراً توی UI نشون داده میشه (خوشبینانه)
- همزمان، یه درخواست async به بکاند میره
- اگر خطا بود (مثلاً موجودی تموم شد)، تغییر UI برمیگرده
بکاند هم سبد رو توی دیتابیس ذخیره میکنه، موجودی و قیمت رو چک میکنه، و آماده تبدیل به سفارش نهایی هست
@DevTwitter | <Abolfazl Javadinia/>
فرانت یا بکاند؟ یا هر دو؟
این سوال ظاهراً ساده، ولی پشتش معماری، UX و حتی امنیته.
گزینه اول: همهچی سمت فرانت (مثلاً فقط توی localStorage)
خوبه چون:
خیلی سریع اجرا میشه
کاربر حس "لگ" نمیگیره
ترافیک سرور هم کمتره
بدیهاش:
موجودی واقعی محصول چک نمیشه
سبد خرید بین دستگاهها همگام نیست
قیمتها ممکنه outdated باشن
گزینه دوم: هر بار تغییر → درخواست به بکاند
خوبه چون:
همهچیز همیشه دقیق و روی دیتابیسه
امکان تحلیل و گزارشگیری بهتره
ولی:
تجربه کاربری کند میشه
هر کلیک، یه درخواست جدید!
راه حل حرفهای: ترکیب جفتش با Optimistic UI
- کاربر روی "Add to cart" کلیک میکنه
- آیتم فوراً توی UI نشون داده میشه (خوشبینانه)
- همزمان، یه درخواست async به بکاند میره
- اگر خطا بود (مثلاً موجودی تموم شد)، تغییر UI برمیگرده
بکاند هم سبد رو توی دیتابیس ذخیره میکنه، موجودی و قیمت رو چک میکنه، و آماده تبدیل به سفارش نهایی هست
@DevTwitter | <Abolfazl Javadinia/>
نسخه 7 ویت (Vite) منتشر شد و چیزی که جالب بود اینه که مستندات به زبان فارسی رسماً اضافه شده:
https://fa.vite.dev
جزییات بیشتر:
https://vite.dev/blog/announcing-vite7.html
- دم بچههای پر تلاش جامعهٔ فارسیزبان گرم
@DevTwitter | <Ali Nazari/>
https://fa.vite.dev
جزییات بیشتر:
https://vite.dev/blog/announcing-vite7.html
- دم بچههای پر تلاش جامعهٔ فارسیزبان گرم
@DevTwitter | <Ali Nazari/>
میتونید سر وپلایزر رو کلاه بزاید و زبان دلخواهتون رو اضافه کنید داخلش
مثلا سایت با جنگو هست ولی شما میتونید اضافه کنید که بزنه سایت وردپرسی هست
https://github.com/mohammadhasananisi/display-fake-technology-of-site
@DevTwitter | <Mohammad Hasan/>
مثلا سایت با جنگو هست ولی شما میتونید اضافه کنید که بزنه سایت وردپرسی هست
https://github.com/mohammadhasananisi/display-fake-technology-of-site
@DevTwitter | <Mohammad Hasan/>
کسشر تر از ایرانسل خودشه
چهار روزه مودم TD-LTE کلا قطعه
هر بار به پشتیبانی زنگ میزنم یا پیام میدم دقیقا یک سری جمله رو پشت هم میچینن، حتی وقتی اعتراض میکنم. چیزی تغییر نمیکنه.
چهار روزه مودم TD-LTE کلا قطعه
هر بار به پشتیبانی زنگ میزنم یا پیام میدم دقیقا یک سری جمله رو پشت هم میچینن، حتی وقتی اعتراض میکنم. چیزی تغییر نمیکنه.
توی اینترنت ثابت، من از هایوب شدیدا راضی بودم یه زمانی
ولی خب بعدا که مخابرات اومد و همه جا FTTH راه اندازی کرد دیگه هایوب سرویس نداد.
اخیرا هم بستههای به شدت گرونی داشت.
ولی تجربهای که من از هایوب داشتم این بود که تا وقتی مشکلت حل نشه ولت نمیکنن، و هی تماس میگیرن برای پیگیری، اینترنت با ثبات تری نسبت به بقیه داشت.
ولی خب بعدا که مخابرات اومد و همه جا FTTH راه اندازی کرد دیگه هایوب سرویس نداد.
اخیرا هم بستههای به شدت گرونی داشت.
ولی تجربهای که من از هایوب داشتم این بود که تا وقتی مشکلت حل نشه ولت نمیکنن، و هی تماس میگیرن برای پیگیری، اینترنت با ثبات تری نسبت به بقیه داشت.
زیتل هم البته از نظر کیفیت سرویس دهی خوبه، ولی هم همه جا پشتیبانی نمیشه، هم هزینهی تجهیزات اولیه بالاست.
هزینهی اینترنت نسبت به سرعت و کیفیتی که میگیری معمولیه.
هزینهی اینترنت نسبت به سرعت و کیفیتی که میگیری معمولیه.
DevTwitter | توییت برنامه نویسی
کسشر تر از ایرانسل خودشه چهار روزه مودم TD-LTE کلا قطعه هر بار به پشتیبانی زنگ میزنم یا پیام میدم دقیقا یک سری جمله رو پشت هم میچینن، حتی وقتی اعتراض میکنم. چیزی تغییر نمیکنه.
قبلنا مودبتر بودم
آدم کم کم به بی آبرویی عادت میکنه :)))
آدم کم کم به بی آبرویی عادت میکنه :)))
This media is not supported in your browser
VIEW IN TELEGRAM
اپلیکیشن تحت وب لیست کارها (To-Do List WebApp) V.2.0
نسخه نهایی
امکانات:
قابلیت ویرایش تسکها
- ذخیرهسازی خودکار تسکها در Local Storage
- طراحی ساده، زیبا و واکنشگرا
- دکمه تغییر تم روشن/تاریک به همراه دکمه سوییچ
- شمارنده تسکهای انجامشده و کل
- فیلتر کردن تسکها (همه، انجامشده، انجامنشده)
- نوار جستجو برای یافتن تسکهای به خصوص
- قابلیت Progress Bar برای نمایش میزان درصد پیشرفت انجام تسکها
مخزن گیتهاب:
https://github.com/KEANU2003/To-Do-List-WebApp
@DevTwitter | <Kian Mahmoudi/>
نسخه نهایی
امکانات:
قابلیت ویرایش تسکها
- ذخیرهسازی خودکار تسکها در Local Storage
- طراحی ساده، زیبا و واکنشگرا
- دکمه تغییر تم روشن/تاریک به همراه دکمه سوییچ
- شمارنده تسکهای انجامشده و کل
- فیلتر کردن تسکها (همه، انجامشده، انجامنشده)
- نوار جستجو برای یافتن تسکهای به خصوص
- قابلیت Progress Bar برای نمایش میزان درصد پیشرفت انجام تسکها
مخزن گیتهاب:
https://github.com/KEANU2003/To-Do-List-WebApp
@DevTwitter | <Kian Mahmoudi/>