نظرتون چیه بعد از ظهر ساعت ۵ لایو بزارم (داخل یوتیوب) ؟
میخوام یه اپ نکست و با گیت هاب اکشن بیلد کنم، پوش کنم تو رجیستری، از اونور رو VPS که coolify داره بگیرمش و دیپلویش کنم
خودمم نمیدونم دقیق چیکار باید کنم، کلی فکر کردن و سوتی دادن قراره داشته باشه
کنارش پرسش و پاسخ میتونیم هم داشته باشیم
میخوام یه اپ نکست و با گیت هاب اکشن بیلد کنم، پوش کنم تو رجیستری، از اونور رو VPS که coolify داره بگیرمش و دیپلویش کنم
خودمم نمیدونم دقیق چیکار باید کنم، کلی فکر کردن و سوتی دادن قراره داشته باشه
کنارش پرسش و پاسخ میتونیم هم داشته باشیم
👍44🔥7🆒3
https://cutejson.dev/
این اپ بالاخره دیپلوی شد، میتونید تست کنید و لذت ببرید
کارش اینکه به شما JSON Server میده که خیلی راحت بتونید ازش استفاده کنید برای پروژه هایی تمرینی که دارید توسعه میدید
سورس پروژه به صورت open source روی گیتهاب قرار داره
یکی از بچههای با استعداد community خودمون توسعه دادتش
اگر خوشتون اومد میتونید بهشstar ⭐️ بدید
@react_ir
این اپ بالاخره دیپلوی شد، میتونید تست کنید و لذت ببرید
کارش اینکه به شما JSON Server میده که خیلی راحت بتونید ازش استفاده کنید برای پروژه هایی تمرینی که دارید توسعه میدید
سورس پروژه به صورت open source روی گیتهاب قرار داره
یکی از بچههای با استعداد community خودمون توسعه دادتش
اگر خوشتون اومد میتونید بهشstar ⭐️ بدید
@react_ir
🔥18❤5👏5👍1🍾1
دیدید که نکست جی اس یه دنیای متفاوتیه از اون چیزی که اول به عنوان react یاد میگیرید
برای یه اپ ریاکتی CSR خیلی راحت صبح بیدار میشید یه اپ ریاکت با vite میسازید شروع میکنید به کد زدن، همه چی ساده هستش، راحت کار میکنه
بعد برای اینکه پرفورمنس اپ بهتر بشه و rank بهتری بگیره تو صفحه نتایج serach engine و … میاید SSR/SSG میکنید
و اینجا تازه اول بدبختیامونه، نکست جی اس باید بریزی همه چی پیچیده شده - روترش فرق داره کانفیگش فرق داره کلا یه دنیای متفاوتیه
چند روز پیش react router نسخه ۷ اومد که تمام این مشکلاتو حل میکنه 🔥
شما اپتونو با vite میسازید react router و نصب میکنید روتاتونو تعریف میکنید و اپو توسعه میدید
بعد روزی که خواستید SSR بشه کافیه برید تو تنظیمات react router یه فلگ ssr و true کنید
و تمام
اپ شما SSR میشه
ممکنه بگید میخوایم SSG کنیم!
اینم کاری نداره
داخل کانفیگ react router بهش route هایی که باید ssg بشن و میگید و اونارو SSG میکنه
به همین راحتی
نه نیازه چیز جدید یاد بگیرید
نه نیازه از اول پروژه رو ببرید رو نکست
مستنداتش اینجا هستش و میتونید اپ های reacr router 6 که دارید و راحت ببرید به نسخه ۷
https://reactrouter.com/home
(با اینکار تیم ریاکت روتر فریمورک remix با react router ادغام شد و یکی شدن)
@react_ir | react.ir
برای یه اپ ریاکتی 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
Reactrouter
React Router Home
❤45👍9👎3🤔1
و بالاخره نسخه استیبل tailwind 4 منتشر شد!
https://tailwindcss.com/blog/tailwindcss-v4
@react_ir | react.ir
https://tailwindcss.com/blog/tailwindcss-v4
@react_ir | react.ir
Tailwindcss
Tailwind CSS v4.0
We just released Tailwind CSS v4.0 — an all-new version of the framework optimized for performance and flexibility, with a reimagined configuration and customization experience, and taking full advantage of the latest advancements the web platform has to…
❤25🔥5😁1
سلام بچهها 👋
بات فروشگاه ACC24 آماده شده بالاخره
از این به بعد میتونید اکانتها و اشتراکهای مختلف مثل GPT، Claude، Gemini و Figma, و Spotify رو داخل بات ببینید و مستقیم خرید کنید.
الان چندتا محصول داخل بات قرار گرفته و قراره بهمرور گزینههای بیشتری هم اضافه بشه. (اگر محصولی نیاز داشتید که تو لیست نبود بهم پیام بدید ببینم میشه اضافه کرد یا نه)
📢 کانال acc24:
@acc24_ir
🤖 بات خرید:
@acc24_ir_bot
یه سر به بات بزنید، شاید چیزی که لازم دارید همونجا پیدا بشه 😄
بات فروشگاه ACC24 آماده شده بالاخره
از این به بعد میتونید اکانتها و اشتراکهای مختلف مثل GPT، Claude، Gemini و Figma, و Spotify رو داخل بات ببینید و مستقیم خرید کنید.
الان چندتا محصول داخل بات قرار گرفته و قراره بهمرور گزینههای بیشتری هم اضافه بشه. (اگر محصولی نیاز داشتید که تو لیست نبود بهم پیام بدید ببینم میشه اضافه کرد یا نه)
📢 کانال acc24:
@acc24_ir
🤖 بات خرید:
@acc24_ir_bot
یه سر به بات بزنید، شاید چیزی که لازم دارید همونجا پیدا بشه 😄
🔥5❤3
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 باشن تا همه اعضای تیم و همه ابزارها به یک مرجع مشترک دسترسی داشته باشن.
بسته به ابزار، میشه از فایلهایی مثل
در کنار مستندات، بهتره قوانینی که قابلیت اجرا دارن با ابزارهایی مثل Formatter، Linter، Type Checker و Test هم enforce بشن.
بهطور خلاصه:
- Context: اطلاعات موردنیاز برای انجام کار فعلی
- Memory: اطلاعات و ترجیحات پایدار درباره شما
- AGENTS.md و مستندات: روش کار و دستورهای پروژه
- Formatter، Linter و Test: قوانین قابلاجرا و قابلبررسی
پس نتیجه این نیست که برای کدنویسی اصلاً از Memory استفاده نکنیم.
نتیجه اینه:
برای کدنویسی روی Memory بهعنوان مرجع اصلی حساب نکنید؛ قواعد و دانش پروژه رو داخل خود پروژه نگه دارید.
@acc24_ir
@acc24_ir_bot
توی ابزارهای 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