React.ir
883 subscribers
11 photos
2 videos
59 links
کانال اطلاع رسانی درباره برنامه‌های سایت react.ir، کانال آپارات و صفحه ویرگول خودم - نیما عارفی

youtube.com/@nima_arf

@nima_arf
Download Telegram
نظرتون چیه بعد از ظهر ساعت ۵ لایو بزارم (داخل یوتیوب) ؟

میخوام یه اپ نکست و با گیت هاب اکشن بیلد کنم، پوش کنم تو رجیستری، از اونور رو VPS که coolify داره بگیرمش و دیپلویش کنم

خودمم نمیدونم دقیق چیکار باید کنم، کلی فکر کردن و سوتی دادن قراره داشته باشه

کنارش پرسش و پاسخ میتونیم هم داشته باشیم
👍44🔥7🆒3
https://cutejson.dev/

این اپ بالاخره دیپلوی شد، میتونید تست کنید و لذت ببرید

کارش اینکه به شما JSON Server میده که خیلی راحت بتونید ازش استفاده کنید برای پروژه هایی تمرینی که دارید توسعه میدید

سورس پروژه به صورت open source روی گیتهاب قرار داره
یکی از بچه‌های با استعداد community خودمون توسعه دادتش
اگر خوشتون اومد میتونید بهشstar ⭐️ بدید


@react_ir
🔥185👏5👍1🍾1
دیدید که نکست جی اس یه دنیای متفاوتیه از اون چیزی که اول به عنوان react یاد میگیرید

برای یه اپ ری‌اکتی CSR خیلی راحت صبح بیدار میشید یه اپ ری‌اکت با vite میسازید شروع میکنید به کد زدن، همه چی ساده هستش، راحت کار میکنه

بعد برای اینکه پرفورمنس اپ بهتر بشه و rank بهتری بگیره تو صفحه نتایج serach engine و … میاید SSR/SSG میکنید
و اینجا تازه اول بدبختیامونه،‌ نکست جی اس باید بریزی همه چی پیچیده شده - روترش فرق داره کانفیگش فرق داره کلا یه دنیای متفاوتیه


چند روز پیش react router نسخه ۷ اومد که تمام این مشکلاتو حل میکنه 🔥

شما اپتونو با vite میسازید react router و نصب میکنید روتاتونو تعریف میکنید و اپو توسعه میدید

بعد روزی که خواستید SSR بشه کافیه برید تو تنظیمات react router یه فلگ ssr و true کنید
و تمام
اپ شما SSR میشه


export default {
ssr: true,
};



ممکنه بگید میخوایم SSG کنیم!
اینم کاری نداره
داخل کانفیگ react router بهش route هایی که باید ssg بشن و میگید و اونارو SSG میکنه



export default {
// return a list of URLs to prerender at build time
async prerender() {
return ["/", "/about", "/contact"];
},
}


به همین راحتی

نه نیازه چیز جدید یاد بگیرید
نه نیازه از اول پروژه رو ببرید رو نکست


مستنداتش اینجا هستش و میتونید اپ های reacr router 6 که دارید و راحت ببرید به نسخه ۷
https://reactrouter.com/home

(با اینکار تیم ری‌اکت روتر فریمورک remix با react router ادغام شد و یکی شدن)


@react_ir | react.ir
45👍9👎3🤔1
گیتهاب به مناسبت عبور کاربرانش از مرز 150 میلیون کاربر، اعلام کرده که هوش مصنوعی Github Copilot رو برای تمام کاربرانش رایگان میکنه و از حالا برنامه نویسان میتونن از این هوش مصنوعی در ادیتور کد VSCode به صورت مجانی استفاده کنن.

@react_ir | react.ir
❤‍🔥535👍42🔥2
سلام بچه‌ها 👋

بات فروشگاه ACC24 آماده شده بالاخره

از این به بعد می‌تونید اکانت‌ها و اشتراک‌های مختلف مثل GPT، Claude، Gemini و Figma, و Spotify رو داخل بات ببینید و مستقیم خرید کنید.

الان چندتا محصول داخل بات قرار گرفته و قراره به‌مرور گزینه‌های بیشتری هم اضافه بشه. (اگر محصولی نیاز داشتید که تو لیست نبود بهم پیام بدید ببینم میشه اضافه کرد یا نه)

📢 کانال acc24:
@acc24_ir

🤖 بات خرید:
@acc24_ir_bot

یه سر به بات بزنید، شاید چیزی که لازم دارید همون‌جا پیدا بشه 😄
🔥53
Forwarded from ACC24.ir
مموری استفاده کنیم یا نه؟!

توی ابزارهای AI دو تا مفهوم مهم داریم: Context و Memory.

هر چت جدیدی که باز می‌کنید، یک Context جدید محسوب می‌شه. شما درخواستتون رو مطرح می‌کنید و مدل هم براساس اطلاعاتی که داخل همون Context داره جواب می‌ده؛ حالا این درخواست می‌تونه پرسیدن یک سؤال، تغییر چندتا فایل یا انجام یک تسک کامل باشه.

بهتره Context رو تا جای ممکن مرتبط و تمیز نگه داریم؛ نه لزوماً فقط کوچک.

مثلاً اگر یک کار با سه پیام تموم شده و کار بعدی هیچ ارتباطی بهش نداره، بهتره برای کار جدید یک چت جدید باز کنیم. اما اگر داریم همون مسئله رو ادامه می‌دیم، معمولاً بهتره در همون چت بمونیم تا مدل تصمیم‌ها و اطلاعات قبلی رو داشته باشه.

اگر چند کار مستقل دارید، می‌تونید اون‌ها رو در چت‌ها یا تسک‌های جدا اجرا کنید. بعضی ابزارها امکان اجرای هم‌زمان و Parallel این تسک‌ها رو هم دارن؛ البته به شرطی که کارها به خروجی هم وابسته نباشن.

هدف اینه که Context تا جای ممکن اطلاعات مرتبط داشته باشه و با جزئیات نامرتبط، تصمیم‌های قدیمی یا دستورهای متناقض شلوغ نشه.

Context بزرگ لزوماً باعث Hallucination نمی‌شه؛ مشکل اصلی معمولاً پایین اومدن نسبت سیگنال به نویزه. وقتی اطلاعات نامرتبط و متناقض زیاد بشن، احتمال اشتباه‌کردن مدل هم بیشتر می‌شه.

حالا Memory چیه؟

Memory می‌تونه یک‌سری اطلاعات پایدار درباره شما و ترجیحاتتون ذخیره کنه. بعداً وقتی از مدل کاری می‌خواید، ممکنه از این اطلاعات برای شخصی‌تر کردن پاسخ یا روش انجام کار استفاده کنه.

مثلاً:

- اسم من نیماست.
- برنامه‌نویسم.
- بیشتر با TypeScript، React، NestJS و React Router کار می‌کنم.
- جواب‌های کوتاه و مستقیم رو ترجیح می‌دم.
- قبل از تغییرات بزرگ، دوست دارم اول یک طرح کلی ببینم.

این اطلاعات می‌تونن هنگام کدنویسی هم مفید باشن، اما Memory نباید مرجع اصلی قوانین پروژه باشه.

مثلاً بهتره داخل Memory نگیم:

- از Single Quote استفاده کن.
- فایل‌ها رو با این ساختار بنویس.
- از فلان Architectural Pattern استفاده کن.
- تست‌ها رو با این دستور اجرا کن.

این موارد باید داخل خود پروژه و تحت Version Control باشن تا همه اعضای تیم و همه ابزارها به یک مرجع مشترک دسترسی داشته باشن.

بسته به ابزار، می‌شه از فایل‌هایی مثل AGENTS.md و مستندات پروژه برای این دستورها استفاده کرد. البته همه ابزارها دقیقاً به یک شکل از این فایل‌ها پشتیبانی نمی‌کنن.

در کنار مستندات، بهتره قوانینی که قابلیت اجرا دارن با ابزارهایی مثل Formatter، Linter، Type Checker و Test هم enforce بشن.

به‌طور خلاصه:

- Context: اطلاعات موردنیاز برای انجام کار فعلی
- Memory: اطلاعات و ترجیحات پایدار درباره شما
- AGENTS.md و مستندات: روش کار و دستورهای پروژه
- Formatter، Linter و Test: قوانین قابل‌اجرا و قابل‌بررسی

پس نتیجه این نیست که برای کدنویسی اصلاً از Memory استفاده نکنیم.

نتیجه اینه:

برای کدنویسی روی Memory به‌عنوان مرجع اصلی حساب نکنید؛ قواعد و دانش پروژه رو داخل خود پروژه نگه دارید.


@acc24_ir
@acc24_ir_bot
👍6