خب اول از همه باید بگم ما وقتی از تیلویند استفاده میکنیم دیگه نیاز نیست پاشیم بریم برای افکت های 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>
<div class="before::text-xl after:border"></div>
یه وقتایی هم پیش میاد که بخایم بگیم اره اگه فلان المنت راست چین یا چپ چین بود ( همون direction ) یسری استایل های متفاوت بگیره:
<div class="rtl:text-2xl ltr:bg-green-200"></div>
خب تا اینجا که هم اسون بود هم جذاب و منم فقط لیست کردم واستون
اما میخایم حالا راجب یه کار خفن دیگه صحبت کنیم باهم
شما اول از همه میاین یه گروه تشکیل میدین با استفاده از کلاس 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>
ما این مورد رو فقط برای hover نداریم، برای focus و active و حتی odd و even هم داریمش فقط متنش عوض میشه و کاربردش که بلدین
این مبحث سلکتور ها خیلی خیلی طولانیه و اگر وقت شد در آینده باز هم دربارش توضیح میدیم
#tailwind #tailwind_8
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11⚡2❤🔥2
#site
Please open Telegram to view this post
VIEW IN TELEGRAM
fengyuanchen.github.io
Guide | Cropper.js
JavaScript image cropper.
🔥10❤🔥2⚡1
مدیر زمان نباشید، مدیر اولویت باشید. اهداف اصلی خود را به قطعاتی با ابعاد کوچک تر تقسیم کنید. هر اولویت یا الزام کوچک در راه رسیدن به هدف نهایی به خودی خود به یک هدف کوچک تبدیل می شود.
" Denis Waitley "
#motivational
☕️ @CodeExplore
" Denis Waitley "
#motivational
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥20⚡6🔥1
• دقیق و واضح سوال پرسیدن و جزئیات دادن به chatGPT از رکنهای اصلی گرفتن یک جواب مرتبطه
[persona] + [context] + [task] + [example] + [tone]
.... generate, give, write, analyze
Ex: generate a 3 month training program for me to follow
#ai #chatgpt #prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡14❤🔥5🔥2
توی این مسابقه قراره یه پروژه با Tailwind طراحی بشه و در آخر ببینیم کی از نظر Clean Code و ساختار کد بهتر کار کرده؟
به نظر شما برنده ی این مسابقه کیه ؟
#tailwind #event #cleancode
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
کی بهتر کد میزنه ؟ | تورنومنت برنامه نویسی
درود رفقا , اینم از پارت اول “کی بهتر کد میزنه” امیدوارم دوست داشته باشید
چنل اسپانسر و داور مون ( آقا حمید عزیز )
https://t.iss.one/hamidreza01
چنل کولی کد ( محمد حسین )
https://www.youtube.com/@coolycode
چنل کد اکسپلور ( رضا )
https://t.iss.one/CodeExplore
چنل…
چنل اسپانسر و داور مون ( آقا حمید عزیز )
https://t.iss.one/hamidreza01
چنل کولی کد ( محمد حسین )
https://www.youtube.com/@coolycode
چنل کد اکسپلور ( رضا )
https://t.iss.one/CodeExplore
چنل…
⚡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❤🔥7⚡5😁2💔1
رفتن به خط بعد در جاوا اسکریپت ✌️
☄️ قبل از این، اگه میخواستی رشتهای رو در چند خط بنویسی، باید از \n برای ایجاد خط جدید استفاده میکردی:
با استفاده از بکتیکها، میتونی به سادگی این کار رو انجام بدی:
#javascript #js #trick
☕️ @CodeExplore
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
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
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
حالا امروز میخام بیشتر عمیق بشیم توی این مبحث و جزئیات بیشتری رو پیش ببریم
ببینین اول از همه بزارین من مثال کدشو که از داک خود تیلویند اوردم نشونتون بدم:
<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}الان ما با این اسم حرکت به المنت خودمون یه اسم میدیم تا توی گروهی که ساختیم انتخابش کنیم و با اون اسم بهش دسترسی داشته باشیم
حالا پایین تر رو ببینین:
<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حالا ما اون اسم دهی که داخل گروه ها گفتیم رو اینجا هم داریم این مثال رو دقت کنین:
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
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡10🔥3❤🔥2
ساختن اکانت توی سایت های فریلنسری خارجی قرار نیست بهتون پروژه و کار بده.
من میخوام توی این پست راجب تجربه خودم از کار بین المللی بدون داشتن اکانتی توی سایت ها صحبت کنم.
اول از همه اینکه پروژه هایی که چرب و چیل هستند و از طرف کارفرمای کاربلد میان معمولا به این سایت ها راه پیدا نمیکنند و توسط افراد نتورک همون شرکت یا کارفرما انجام میشن. پروژه هایی میان روی این سایت ها که کارفرماشون معمولا دنبال یکی هست که کار رو ارزون انجام بده.
در نتیجه فضای حاکم بر این سایت ها اینجوریه که اکثریت پروژه ها به فریلنسرهایی داده میشه که کمترین پول رو در ازای اون پروژه طلب کنند. عملا این فضا برای ما که میخواییم درآمد خوبی داشته باشیم مناسب نیست.
احراز هویت شما توسط هر شخص و شرکتی هم که انجام شده باشه تهش شما در واقع ایرانی هستید و ممکنه هر زمانی اکانتتون بن بشه. با وجود این همه ریسک و مانع به نظر من ارزش اینو نداره که فعالیتمون معطوف به این سایت ها باشه. اما چیکار کنیم؟
من از وقتی که فریلنسری رو توی مارکت بین المللی شروع کردم تنها تمرکزم روی این بوده که کلاینت هایی که میگیرم تبدیل به ارتباط بشن برام، و توسط اونا من داخل یه شبکه ریفرالی به افراد بیشتری معرفی بشم و کار و کلاینت بیشتری سراغم بیاد، اینجا یه چیزی خیلی مهمه اونم کیفیت بالای کاره.
کیفیت کار باید همیشه سعی کنید که چند درجه بالاتر از مبلغی باشه که میگیرید. به اصطلاح اُور دلیور کنید، اما مواظب باشید که کمتر از مبلغی که نرخ مناسب کارتون هست نگیرید. بازار رو خراب نکنید در واقع. تا اینجا شما یه سری کلاینت ثابت دارید که بهتون پروژه میدن، اما چطوری گسترشش بدیم؟
حضور مستمر و مداوم آنلاین. روی اینترنت اگه اظهار وجود نکنید کسی متوجه شما نخواهد شد. خیلی از بچه هارو میبینم که کارشون به شدت خوبه اما چون پورتفولیویی ندارن که در دسترس باشه به مشکل میخورن. کارتون رو پست کنید، با همکاراتون کانکت شید و یه پورتفولیو آپدیت شده داشته باشید.
در آخر این تجربه و نظر منه و دیدم دوستانی هستند که علارغم مواردی که من گفتم تونستن به درآمد خوبی از این سایت ها برسند، اما روشی که من گفتم خیلی مطمئن تر و آینده دار تره.
📱 https://x.com/mvhdigharib
#freelance
☕️ @CodeExplore
من میخوام توی این پست راجب تجربه خودم از کار بین المللی بدون داشتن اکانتی توی سایت ها صحبت کنم.
اول از همه اینکه پروژه هایی که چرب و چیل هستند و از طرف کارفرمای کاربلد میان معمولا به این سایت ها راه پیدا نمیکنند و توسط افراد نتورک همون شرکت یا کارفرما انجام میشن. پروژه هایی میان روی این سایت ها که کارفرماشون معمولا دنبال یکی هست که کار رو ارزون انجام بده.
در نتیجه فضای حاکم بر این سایت ها اینجوریه که اکثریت پروژه ها به فریلنسرهایی داده میشه که کمترین پول رو در ازای اون پروژه طلب کنند. عملا این فضا برای ما که میخواییم درآمد خوبی داشته باشیم مناسب نیست.
احراز هویت شما توسط هر شخص و شرکتی هم که انجام شده باشه تهش شما در واقع ایرانی هستید و ممکنه هر زمانی اکانتتون بن بشه. با وجود این همه ریسک و مانع به نظر من ارزش اینو نداره که فعالیتمون معطوف به این سایت ها باشه. اما چیکار کنیم؟
من از وقتی که فریلنسری رو توی مارکت بین المللی شروع کردم تنها تمرکزم روی این بوده که کلاینت هایی که میگیرم تبدیل به ارتباط بشن برام، و توسط اونا من داخل یه شبکه ریفرالی به افراد بیشتری معرفی بشم و کار و کلاینت بیشتری سراغم بیاد، اینجا یه چیزی خیلی مهمه اونم کیفیت بالای کاره.
کیفیت کار باید همیشه سعی کنید که چند درجه بالاتر از مبلغی باشه که میگیرید. به اصطلاح اُور دلیور کنید، اما مواظب باشید که کمتر از مبلغی که نرخ مناسب کارتون هست نگیرید. بازار رو خراب نکنید در واقع. تا اینجا شما یه سری کلاینت ثابت دارید که بهتون پروژه میدن، اما چطوری گسترشش بدیم؟
حضور مستمر و مداوم آنلاین. روی اینترنت اگه اظهار وجود نکنید کسی متوجه شما نخواهد شد. خیلی از بچه هارو میبینم که کارشون به شدت خوبه اما چون پورتفولیویی ندارن که در دسترس باشه به مشکل میخورن. کارتون رو پست کنید، با همکاراتون کانکت شید و یه پورتفولیو آپدیت شده داشته باشید.
در آخر این تجربه و نظر منه و دیدم دوستانی هستند که علارغم مواردی که من گفتم تونستن به درآمد خوبی از این سایت ها برسند، اما روشی که من گفتم خیلی مطمئن تر و آینده دار تره.
#freelance
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥12🔥4⚡3
به نظرتون توی کدنویسی سخت ترین مبحثی که یک برنامه نویس باهاش سروکار داره چیه؟🤔
#programming
☕️ @CodeExplore
#programming
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13❤🔥1⚡1
Full Stack Developer
<unknown>
صبحمون رو با یک آهنگ سم و باحال شروع کنیم😂 🔥
واسه بقیه دوستان هم بفرستید ، حال و هواشون عوض شه❤️
متن آهنگ رو براتون تو کامنت میفرستم.
#music
☕️ @CodeExplore
واسه بقیه دوستان هم بفرستید ، حال و هواشون عوض شه
متن آهنگ رو براتون تو کامنت میفرستم.
#music
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥9⚡3😁3🔥2
UIBall Loaders گزینههای متنوعی از انیمیشنها رو فراهم میکنه که میتونن به صورت مستقیم در پروژههای شما استفاده بشن
#loader #animation
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡7🔥3❤🔥1
و بازم یک ایرانی دیگه تو یک تیم خفن. افتخار میکنیم که حسن رمضانی تو این تصویر می بینیم. حسن رمضانی سمت راستیه هست.
واسه همتون آرزوی موفقیت داریم و امیدواریم که بهترین ها براتون رقم بخوره:)
#developer #pydantic #library
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥20🔥5⚡3😁1
برعکس کردن تکست در پایتون ⌨️
🔴 در واقع این قابلیت با استفاده از اسلایس کردن در پایتون به کار میره، که در آینده آموزشش رو میزاریم، فعلا در همین حد بدونید که شما میتونید به این شکل یک مجموعه(در این مثال یک استرینگ) رو قاچ قاچ کنید!
برگردیم به مثال خودمون، اینجا استپ رو منفی گذاشتیم تا به عقب بره، اینطوری تکست برعکس میشه:
#python #step #slice
☕️ @CodeExplore
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
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6🔥4⚡2