کداکسپلور | CodeExplore
7.93K subscribers
2.01K photos
346 videos
103 files
1.82K links
با کد اکسپلور یاد بگیر، لذت ببر و بروز باش ⚡️😉

سایت:
CodeExplore.ir
👨🏻‍💻 ارتباط با ما :
@CodeExploreSup
گروه :
@CodeExplore_Gap
تبلیغات در کد اکسپلور :
@CodeExploreAds
Download Telegram
📌خب بچه ها امروز میخایم یکم کار با تیلویند رو جذاب تر کنیم و در ادامه مباحث TailwindCss به یسری قسمت های قشنگ تری برسیم

خب اول از همه باید بگم ما وقتی از تیلویند استفاده میکنیم دیگه نیاز نیست پاشیم بریم برای افکت های hover و focus جداگونه css بزنیم
و خیلی خیلی راحت میشه این افکت ها و سلکتور هارو داخل تیلویند به کار برد😂
توی مثال پایین براتون هاور و فکوس رو آوردم:
<button class="bg-sky-500 hover:bg-sky-700 hover:text-9xl focus:bg-red-500">
Save changes
</button>

◀️خب الان ما گفتیم مثلا موقع هاور شدن این دکمه، بک گراندش عوض شه و سایز متنش بزرگ تر بشه، و وقتی هم روش عملیات فکوس رخ داد بک گراندش قرمز شه

حالا ما میتونیم بیایم مشخص کنیم وقتی مثلا فیلد هایی که داریم، required هستن یا disabled شدن، باز استایل هاشون عوض شه (یعنی وقتی اتریبیوت های مربوطه رو گرفتن)
<button class="bg-sky-500 disabled:opacity-50 required:text-red-500">
Save changes
</button>


خیلی جالب تر میشه اگه بگم ما حتی میتونیم first-child و last-child و... هم مشخص کنیم!
<li class="flex py-4 first:pt-0 last:pb-0 even:bg-red-500 odd:bg-green-200">
<img class="h-10 w-10 rounded-full" src="{person.imageUrl}" alt="" />
<div class="ml-3 overflow-hidden">
<p class="text-sm font-medium text-slate-900">{person.name}</p>
<p class="text-sm text-slate-500 truncate">{person.email}</p>
</div>
</li>


اینا که چیزی نیست داداش، حتی به شبه المنت هایی مثل after و before المنت هم دسترسی داریم! مثال رو دقت کنین:
<div class="before::text-xl after:border"></div>


یه وقتایی هم پیش میاد که بخایم بگیم اره اگه فلان المنت راست چین یا چپ چین بود ( همون direction ) یسری استایل های متفاوت بگیره:
<div class="rtl:text-2xl ltr:bg-green-200"></div>

خب تا اینجا که هم اسون بود هم جذاب و منم فقط لیست کردم واستون
اما میخایم حالا راجب یه کار خفن دیگه صحبت کنیم باهم
🔥ببینین همه میدونیم یه وقتایی ما یسری المنت داریم که به هم مربوطن و گروهی کار میکنن، و میخام نسبت به هم یسری اتفاقا داخلشون بیوفته، یعنی اگه فلانی هاور شد این یکی یه اتفاق دیگه براش بیوفته، اینجاس که تیلویند اومده group هارو برامون ردیف کرده
شما اول از همه میاین یه گروه تشکیل میدین با استفاده از کلاس group و بعد از اون هم تگ هایی که داخل این گروه وجود دارن میتونن نسبت به هم گروهی هاشون واکنش نشون بدن
با مثلا راحت میشه درکش کرد و من این مثال رو از داک تیلویند میارم:
<a href="#" class="group block max-w-xs mx-auto rounded-lg p-6 bg-white ring-1 ring-slate-900/5 shadow-lg space-y-3 hover:bg-sky-500 hover:ring-sky-500">
<div class="flex items-center space-x-3">
<svg class="h-6 w-6 stroke-sky-500 group-hover:stroke-white" fill="none" viewBox="0 0 24 24"><!-- ... --></svg>
<h3 class="text-slate-900 group-hover:text-white text-sm font-semibold">New project</h3>
</div>
<p class="text-slate-500 group-hover:text-white text-sm">Create a new project from a variety of starting templates.</p>
</a>

👑داخل این قسمت رو که نگاه کنین ما به تگ a یه کلاس group دادیم و اینطوری یه گرروه تشکیل دادیم از همه اینا، داخل این گروهمون دو جا کلاس group-hover رو میبینیم که خب اینطوری میشه معنیش کرد که وقتی کل این گروه ما(نه فقط یه المنت خاص) هاور شد، بیا متن فلان المنت رو سفید کن

ما این مورد رو فقط برای hover نداریم، برای focus و active و حتی odd و even هم داریمش فقط متنش عوض میشه و کاربردش که بلدین

این مبحث سلکتور ها خیلی خیلی طولانیه و اگر وقت شد در آینده باز هم دربارش توضیح میدیم

#tailwind #tailwind_8
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥112❤‍🔥2
⭐️خیلی وقتا پیش میاد ما بخوایم از یسری ابزار برای برش عکس داخل سایتمون استفاده کنیم و به قولی Cropper بسازیم، با استفاده از سایت زیر میتونین به راحتی این ابزار رو داخل کد هاتون به کار بگیرین:
🌐https://fengyuanchen.github.io/cropperjs/v2/guide.html

#site
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤‍🔥21
مدیر زمان نباشید، مدیر اولویت باشید. اهداف اصلی خود را به قطعاتی با ابعاد کوچک تر تقسیم کنید. هر اولویت یا الزام کوچک در راه رسیدن به هدف نهایی به خودی خود به یک هدف کوچک تبدیل می شود.

" Denis Waitley "

#motivational
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥206🔥1
😂😅

#fun
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
😁40🔥52
🧠 چطور دقیق ترین جواب هارو با استفاده از بهترین پرامپت‌ها از هوش مصنوعی بگیریم؟!

• دقیق و واضح سوال پرسیدن و جزئیات دادن به chatGPT از رکنهای اصلی گرفتن یک جواب مرتبطه

📊 این فرمول رو باید یه جایی ذخیره کنید :

[persona] + [context] + [task] + [example] + [tone]


➡️Persona

⬅️قراره به chatGPT بگیم به جای چه کسی فکر کنه اگر شخص معروفی رو میشناسید میتونید اسمشو بیارید مثلا (مثل استیو جابز عمل کن)

➡️Context

⬅️تو این قسمت مشخص کنید چه سابقه ای دارید و قراره به چه هدفی برسید با این prompt مثلا من یک طراح گرافیک جونیور هستم، برنامه ی آموزشی میخوام و فقط ۳ روز در هفته زمان دارم

➡️Exemplar

⬅️نمونه ای آپلود کنید و ازش بخواید با توجه به اون نمونه بهتون جواب بده مثلا بر اساس رزومه تون برای سوالات احتمالی مصاحبه جواب طراحی کنه

➡️Task

⬅️همیشه برای دادن task از افعالی که مشخص میکنن خواسته ی شما از chatGPT چیه استفاده کنید. مثلا

....  generate, give, write, analyze

Ex: generate a 3 month training program for me to follow


➡️Tone

⬅️قطعا کلماتی که برای توصیف لحن مورد نیازمون بلدیم محدوده اگر به خود chatGPT توضیح بدید در چه شرایطی هستید بهترین tone رو بهتون معرفی میکنه

#ai #chatgpt #prompt
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
14❤‍🔥5🔥2
▶️مسابقه رضا جان از تیم کداکسپلور رو میتونید از این لینک ببینید و لذت ببرید🔥

توی این مسابقه قراره یه پروژه با Tailwind طراحی بشه و در آخر ببینیم کی از نظر Clean Code و ساختار کد بهتر کار کرده؟😉

به نظر شما برنده ی این مسابقه کیه ؟🤔

🖥 https://youtu.be/qKh116RTyPU

#tailwind #event #cleancode
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
17🔥5❤‍🔥3😁1
کداکسپلور | CodeExplore pinned «▶️مسابقه رضا جان از تیم کداکسپلور رو میتونید از این لینک ببینید و لذت ببرید🔥 توی این مسابقه قراره یه پروژه با Tailwind طراحی بشه و در آخر ببینیم کی از نظر Clean Code و ساختار کد بهتر کار کرده؟😉 به نظر شما برنده ی این مسابقه کیه ؟🤔 🖥 https://youtu.be/qKh116RTyPU…»
This media is not supported in your browser
VIEW IN TELEGRAM
بالاخره بخشی از انتظار ها به پایان رسید 😃🥳

توی آینده کد اکسپلور چه چیز هایی قراره ببینیم؟‌
🤔

برنامه های زیادی تو راهه
😎

چیزی نمونده منتظر باشید...


☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥56❤‍🔥75😁2💔1
وقتی سیستمتو عوض میکنی

#fun
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
😁35❤‍🔥4💔21🔥1
رفتن به خط بعد در جاوا اسکریپت ✌️

☄️قبل از این، اگه می‌خواستی رشته‌ای رو در چند خط بنویسی، باید از \n برای ایجاد خط جدید استفاده می‌کردی:
const message = "This is line 1\nThis is line 2\nThis is line 3";
console.log(message);
/*
This is line 1
This is line 2
This is line 3
*/

با استفاده از بک‌تیک‌ها، می‌تونی به سادگی این کار رو انجام بدی:
const message = `This is line 1
This is line 2
This is line 3`;
console.log(message);
/*
This is line 1
This is line 2
This is line 3
*/

#javascript #js #trick
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
12❤‍🔥2🔥2
📚سه تا کتاب رایگان و کاربردی برای ماشین لرنینگ و مباحث مربوط به اون

▪️An Introduction to Statistical Learning

این کتاب مفاهیم اساسی Statistical Learning رو به زبان ساده توضیح میده.

▪️Machine Learning Yearning

توی این کتاب به بهترین روش‌های پیاده‌سازی پروژه‌های ماشین لرنینگ و افزایش کارایی اونها پرداخته شده.

▪️The Hundred-Page Machine Learning Book

یک راهنمای کوتاه و جامع که مبانی و کاربردهای اصلی ماشین لرنینگ رو پوشش میده.

#machine #learning #book
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥4
دوستانی که هدفشون کشور آلمان هست ، بهتون بگم که برای پیدا کردن شغل می تونید از Xing ( مثل لینکدین می مونه ولی با این تفاوت که تو کشور آلمان خیلی محبوبه) می تونید استفاده کنید ، حتی شغل ریموت هم می تونید پیدا کنید و اینکه تو بعضی از آگهی ها بودجه و حقوق رو مشخص میکنن.

👉 xing.com

#xing
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
18❤‍🔥3🔥3
☄️خوش اومدین به یک پست دیگه از آموزش های TailwindCss

◀️در ادامه مباحث قبلی ما رسیدیم به گروه بندی و اینکه چطور مشخص کنیم اگه گروهمون هاور شد فلان اتفاق بیوفته
حالا امروز میخام بیشتر عمیق بشیم توی این مبحث و جزئیات بیشتری رو پیش ببریم

ببینین اول از همه بزارین من مثال کدشو که از داک خود تیلویند اوردم نشونتون بدم:
<ul role="list">
{#each people as person}
<li class="group/item hover:bg-slate-100 ...">
<img src="{person.imageUrl}" alt="" />
<div>
<a href="{person.url}">{person.name}</a>
<p>{person.title}</p>
</div>
<a class="group/edit invisible hover:bg-slate-200 group-hover/item:visible ..." href="tel:{person.phone}">
<span class="group-hover/edit:text-gray-700 ...">Call</span>
<svg class="group-hover/edit:translate-x-0.5 group-hover/edit:text-slate-500 ...">
<!-- ... -->
</svg>
</a>
</li>
{/each}
</ul>

یکم پهپ قاطیش کردن بیخیال شما کلاس های تیلویند رو دریابین
اینجا ما یه سینتکس داریم که به این صورت نوشته شده:
group/{name}
group-hover/{name}

الان ما با این اسم حرکت به المنت خودمون یه اسم میدیم تا توی گروهی که ساختیم انتخابش کنیم و با اون اسم بهش دسترسی داشته باشیم
💎توی مثال بالا، هر li ما داخل گروه اسمش item هست و اون پایین ترش داخل تگ a که اسم edit گرفته، گفته هروقت روش هاور شد، ایتم ما برای فلان اتفاق بیوفته و راحت دسترسی داره به اون تگ داخل گروه

حالا پایین تر رو ببینین:
<div class="group is-published">
<div class="hidden group-[.is-published]:block">
Published
</div>
</div>

اینجا دیگه خیلی خفن شده و گفتیم این گروه ما هروقت کلاس is-published گرفتن، فلان تگ ما دیسپلی block بگیره، یعنی راحت میتونیم سلکتور های مختلفی رو ست کنیم و کلی با جی اس بلا سرش بیاریم

یا حتی میتونیم مثل کد پایین بیایم و با سلکتور های دیگه کار کنیم، قبلا راجب این براکت های باز و بسته گفتم توی تیلویند:
<div class="group">
<div class="group-[:nth-of-type(3)_&]:block">
<!-- ... -->
</div>
</div>


خب گروه بندی هارو کامل باهم بررسی کردیم
یه مبحث دیگه که خیلی خفنه peer هست ( پیر نیستا جوونه )😂
ما داخل گروه بندی ها، گروهمون طوری بود که المنت ها داخل اون گروه اصلی باشن
ولی داخل peer اینا کنار هم قرار دارن و همینطوری استایل هارو با اسم peer بهشون میدیم

<form>
<label class="block">
<span class="block text-sm font-medium text-slate-700">Email</span>
<input type="email" class="peer ..."/>
<p class="mt-2 invisible peer-invalid:visible text-pink-600 text-sm">
Please provide a valid email address.
</p>
</label>
</form>

داخل این مثال ما اومدیم کلاس peer رو به input دادیم و بعدش هم به p کنارش گفتیم هروقت input ما invalid بود، نشون داده بشه
درکل سینتکسل کلی اینطوریه که شما مدیفایر رو بعد از peer مشخص میکنین:
peer-{modifire)
peer-focus
peer-required


⚡️یه نکته مهم اینه که این کلاس peer باید قبل از peer-{modifire} ست بشه
حالا ما اون اسم دهی که داخل گروه ها گفتیم رو اینجا هم داریم این مثال رو دقت کنین:
html 
<fieldset>
<legend>Published status</legend>

<input id="draft" class="peer/draft" type="radio" name="status" checked />
<label for="draft" class="peer-checked/draft:text-sky-500">Draft</label>

<input id="published" class="peer/published" type="radio" name="status" />
<label for="published" class="peer-checked/published:text-sky-500">Published</label>

<div class="hidden peer-checked/draft:block">Drafts are only visible to administrators.</div>
<div class="hidden peer-checked/published:block">Your post will be publicly visible on your site.</div>
</fieldset>


سلکتور ها کلا خیلی طولانیه مبحثش و من یه سلکتور دیگه بگم و بریم:
<ul class="*:bg-sky-50 ...">
<li class="bg-red-50 ...">Sales</li>
<li>Marketing</li>
<li>SEO</li>
<!-- ... -->
</ul>

👑سلکتور * رو وقتی استفاده میکنیم که بخایم یه استایل رو به تمام فرزندان تگمون بدیم همینطور که توی مثال بالا میبینین

#tailwind #tailwind_9
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥3❤‍🔥2
ساختن اکانت توی سایت های فریلنسری خارجی قرار نیست بهتون پروژه و کار بده.

من میخوام توی این پست راجب تجربه خودم از کار بین المللی بدون داشتن اکانتی توی سایت ها صحبت کنم.
‏اول از همه اینکه پروژه هایی که چرب و چیل هستند و از طرف کارفرمای کاربلد میان معمولا به این سایت ها راه پیدا نمیکنند و توسط افراد نتورک همون شرکت یا کارفرما انجام میشن. پروژه هایی میان روی این سایت ها که کارفرماشون معمولا دنبال یکی هست که کار رو ارزون انجام بده.
‏در نتیجه فضای حاکم بر این سایت ها اینجوریه که اکثریت پروژه ها به فریلنسرهایی داده میشه که کمترین پول رو در ازای اون پروژه طلب کنند. عملا این فضا برای ما که میخواییم درآمد خوبی داشته باشیم مناسب نیست.
‏احراز هویت شما توسط هر شخص و شرکتی هم که انجام شده باشه تهش شما در واقع ایرانی هستید و ممکنه هر زمانی اکانتتون بن بشه. با وجود این همه ریسک و مانع به نظر من ارزش اینو نداره که فعالیتمون معطوف به این سایت ها باشه. اما چیکار کنیم؟
‏من از وقتی که فریلنسری رو توی مارکت بین المللی شروع کردم تنها تمرکزم روی این بوده که کلاینت هایی که میگیرم تبدیل به ارتباط بشن برام، و توسط اونا من داخل یه شبکه ریفرالی به افراد بیشتری معرفی بشم و کار و کلاینت بیشتری سراغم بیاد، اینجا یه چیزی خیلی مهمه اونم کیفیت بالای کاره.
‏کیفیت کار باید همیشه سعی کنید که چند درجه بالاتر از مبلغی باشه که میگیرید. به اصطلاح اُور دلیور کنید، اما مواظب باشید که کمتر از مبلغی که نرخ مناسب کارتون هست نگیرید. بازار رو خراب نکنید در واقع. تا اینجا شما یه سری کلاینت ثابت دارید که بهتون پروژه میدن، اما چطوری گسترشش بدیم؟
‏حضور مستمر و مداوم آنلاین. روی اینترنت اگه اظهار وجود نکنید کسی متوجه شما نخواهد شد. خیلی از بچه هارو میبینم که کارشون به شدت خوبه اما چون پورتفولیویی ندارن که در دسترس باشه به مشکل میخورن. کارتون رو پست کنید، با همکاراتون کانکت شید و یه پورتفولیو آپدیت شده داشته باشید.
‏در آخر این تجربه و نظر منه و دیدم دوستانی هستند که علارغم مواردی که من گفتم تونستن به درآمد خوبی از این سایت ها برسند، اما روشی که من گفتم خیلی مطمئن تر و آینده دار تره.

📱 https://x.com/mvhdigharib

#freelance
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥12🔥43
به نظرتون توی کدنویسی سخت ترین مبحثی که یک برنامه نویس باهاش سروکار داره چیه؟🤔

#programming
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13❤‍🔥11
Full Stack Developer
<unknown>
صبحمون رو با یک آهنگ سم و باحال شروع کنیم😂🔥
واسه بقیه دوستان هم بفرستید ، حال و هواشون عوض شه❤️
متن آهنگ رو براتون تو کامنت می‌فرستم.

#music
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥93😁3🔥2
🟠 یک منبع عالی برای برنامه نویسا و طراحان سایت که به دنبال Loading animation های ساده و جذاب هستن. این سایت مجموعه‌ای از انیمیشن‌های CSS و SVG رو ارائه میده که به راحتی قابل استفاده و سفارشی سازی هستند. با استفاده از این انیمیشن‌ها، میتونید تجربه کاربری سایت‌ها و برنامه‌ها رو بهبود ببخشید.

‏UIBall Loaders گزینه‌های متنوعی از انیمیشن‌ها رو فراهم میکنه که میتونن به صورت مستقیم در پروژه‌های شما استفاده بشن 💡

🔗uiball.com/loaders

#loader #animation
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥3❤‍🔥1
💫 تو این تصویر کور دولوپرهای تیم Pydantic رو می بینید

و بازم یک ایرانی دیگه تو یک تیم خفن. افتخار میکنیم که حسن رمضانی تو این تصویر می بینیم. حسن رمضانی سمت راستیه هست.

🌐 گیت هاب حسن رمضانی
🖥 تجربه مهاجرت حسن رمضانی ( آلمان )

واسه همتون آرزوی موفقیت داریم و امیدواریم که بهترین ها براتون رقم بخوره:)💚

#developer #pydantic #library
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥20🔥53😁1
برعکس کردن تکست در پایتون ⌨️

🔴در واقع این قابلیت با استفاده از اسلایس کردن در پایتون به کار میره، که در آینده آموزشش رو میزاریم، فعلا در همین حد بدونید که شما میتونید به این شکل یک مجموعه(در این مثال یک استرینگ) رو قاچ قاچ کنید!
txt="CodeExplore"
print(txt[t1:t2:t3])

#در اینجا فرض میکنیم t1,t2,t3 همگی عدد صحیح هستند، t1 در واقع start رو مشخص میکنه و t2 مورد stop رو مشخص میکنه و آخری که t3 هستش step رو مشخص میکنه.
#در واقع step میگه که با چه اندازه ای توی کاراکترا پیش بره، start نقطه شروع رو مشخص میکنه که پیشفرض 0 هست و stop هم نقطه پایان رو مشخص میکنه که پیشفرض شماره آخرین حرف کاراکتره

برگردیم به مثال خودمون، اینجا استپ رو منفی گذاشتیم تا به عقب بره، اینطوری تکست برعکس میشه:

a = "Hello World!"
print(a[::-1])

"""
!dlroW olleH
"""

#python #step #slice
☕️ @CodeExplore
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥6🔥42