<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Mahendra Nagpure</title>
    <description>The latest articles on DEV Community by Mahendra Nagpure (@mahendra_nagpure).</description>
    <link>https://dev.to/mahendra_nagpure</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3051808%2Fcde0cda4-682e-47d7-98e2-19283a1f8e8c.jpg</url>
      <title>DEV Community: Mahendra Nagpure</title>
      <link>https://dev.to/mahendra_nagpure</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mahendra_nagpure"/>
    <language>en</language>
    <item>
      <title>Building My Developer Portfolio: A Journey from Passion to Production</title>
      <dc:creator>Mahendra Nagpure</dc:creator>
      <pubDate>Tue, 03 Feb 2026 20:47:56 +0000</pubDate>
      <link>https://dev.to/mahendra_nagpure/building-my-developer-portfolio-a-journey-from-passion-to-production-51k0</link>
      <guid>https://dev.to/mahendra_nagpure/building-my-developer-portfolio-a-journey-from-passion-to-production-51k0</guid>
      <description>&lt;p&gt;Hey DEV Community! &lt;/p&gt;

&lt;p&gt;I'm Mahendra Nagpure, a full-stack developer from Malegoan, Nashik, and I recently launched my portfolio at &lt;a href="https://mahendranagpure.com" rel="noopener noreferrer"&gt;mahendranagpure.com&lt;/a&gt;. After writing tutorials here about JavaScript and CSS, I realized it was time to build a central hub for my work. Today, I want to share how I built it and what I learned.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Why Behind the Build
&lt;/h2&gt;

&lt;p&gt;You know that feeling when you've been coding for years but don't have one place to show it all off? That was me. I've been sharing tutorials here on DEV (my JavaScript and CSS roadmaps got some great feedback!), but I needed something more - a space that represents my skills and helps me connect with clients and collaborators.&lt;/p&gt;

&lt;p&gt;The mission was clear: &lt;strong&gt;build a portfolio that proves I can build portfolios&lt;/strong&gt; (meta, right?). It had to be fast, beautiful, and actually useful.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Tech Stack
&lt;/h2&gt;

&lt;p&gt;I'm a firm believer in using modern tools that make development enjoyable. Here's what powers the site:&lt;/p&gt;

&lt;h3&gt;
  
  
  Frontend Layer
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Next.js 14&lt;/strong&gt; with App Router - Server components are a game-changer&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TypeScript&lt;/strong&gt; - Because I enjoy sleeping at night without runtime errors&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Vanilla CSS&lt;/strong&gt; - Complete control, zero bloat, maximum flexibility&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google Fonts (Inter)&lt;/strong&gt; - Clean, professional typography&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Backend &amp;amp; Data
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Supabase&lt;/strong&gt; - PostgreSQL database + authentication in one package&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Supabase Storage&lt;/strong&gt; - Dead simple image and media hosting&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Vercel&lt;/strong&gt; - Deploy in seconds, edge network everywhere&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Extras That Matter
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;MDX&lt;/strong&gt; - Writing rich content with React components embedded&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google Analytics&lt;/strong&gt; - Understanding visitor behavior&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Syntax Highlighting&lt;/strong&gt; - Making code snippets look professional&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Design Philosophy
&lt;/h2&gt;

&lt;p&gt;Let's be real - nobody remembers a boring portfolio. I wanted something that stands out:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dark Mode First&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Modern developers live in dark mode. The entire design started there, with a light mode as an option for later.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Smooth Animations&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Hover effects, page transitions, and micro-interactions that feel natural. Nothing jarring, everything purposeful.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Color Psychology&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
No basic blues or reds. I went with harmonious HSL color combinations that create depth and interest. Gradients add that premium feel.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Typography Hierarchy&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Clear heading structure with varied font weights. Reading should feel effortless.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mobile-First&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Built for phones first, then scaled up. Most visitors are on mobile anyway.&lt;/p&gt;
&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Portfolio Grid
&lt;/h3&gt;

&lt;p&gt;Projects displayed with tech stack badges, descriptions, and live demo links. Hover animations reveal more details without cluttering the initial view.&lt;/p&gt;
&lt;h3&gt;
  
  
  About Section
&lt;/h3&gt;

&lt;p&gt;Who I am, where I'm from, what drives me. Located in Malegoan, available 10 AM - 7 PM IST for collaborations.&lt;/p&gt;
&lt;h3&gt;
  
  
  Direct Contact
&lt;/h3&gt;

&lt;p&gt;Email integration at &lt;code&gt;work@mahendranagpure.com&lt;/code&gt; with a clean, accessible form.&lt;/p&gt;
&lt;h3&gt;
  
  
  Blog Platform (In Progress)
&lt;/h3&gt;

&lt;p&gt;Planning to bring my DEV Community content to my own platform with full MDX support.&lt;/p&gt;
&lt;h2&gt;
  
  
  The Build Journey
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Step 1: Design System First
&lt;/h3&gt;

&lt;p&gt;Before writing a single line of code, I defined:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Color variables (using CSS custom properties)&lt;/li&gt;
&lt;li&gt;Spacing scale (0.25rem increments)&lt;/li&gt;
&lt;li&gt;Typography system (font sizes, weights, line heights)&lt;/li&gt;
&lt;li&gt;Component patterns (buttons, cards, forms)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This planning saved &lt;strong&gt;hours&lt;/strong&gt; of back-and-forth later.&lt;/p&gt;
&lt;h3&gt;
  
  
  Step 2: Component Architecture
&lt;/h3&gt;

&lt;p&gt;Created reusable building blocks:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Example: Button component with variants&lt;/span&gt;
&lt;span class="kr"&gt;interface&lt;/span&gt; &lt;span class="nx"&gt;ButtonProps&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;variant&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;primary&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;secondary&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ghost&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;sm&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;md&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;lg&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;children&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;ReactNode&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;TypeScript interfaces kept everything organized and bug-free.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Performance Optimization
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Next.js Image component for automatic optimization&lt;/li&gt;
&lt;li&gt;Code splitting to reduce initial bundle size&lt;/li&gt;
&lt;li&gt;Font optimization with &lt;code&gt;next/font&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Minimal JavaScript - let CSS handle animations&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Step 4: SEO Foundation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Semantic HTML throughout&lt;/li&gt;
&lt;li&gt;Meta tags for every page&lt;/li&gt;
&lt;li&gt;Open Graph for social sharing&lt;/li&gt;
&lt;li&gt;JSON-LD structured data&lt;/li&gt;
&lt;li&gt;Sitemap generation&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Challenges I Faced
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Beautiful vs Fast
&lt;/h3&gt;

&lt;p&gt;Animations can kill performance if done wrong. Solution? Use CSS &lt;code&gt;transform&lt;/code&gt; and &lt;code&gt;opacity&lt;/code&gt; changes (GPU-accelerated) instead of animating width, height, or layout properties.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="c"&gt;/*  Fast */&lt;/span&gt;
&lt;span class="nc"&gt;.card&lt;/span&gt;&lt;span class="nd"&gt;:hover&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;transform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;translateY&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;-4px&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="nl"&gt;transition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;transform&lt;/span&gt; &lt;span class="m"&gt;0.2s&lt;/span&gt; &lt;span class="n"&gt;ease&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c"&gt;/*  Slow */&lt;/span&gt;
&lt;span class="nc"&gt;.card&lt;/span&gt;&lt;span class="nd"&gt;:hover&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;margin-top&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;-4px&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c"&gt;/* Forces layout recalculation */&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Content Organization
&lt;/h3&gt;

&lt;p&gt;How do you showcase projects without overwhelming visitors? After several iterations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Grid layout with clear visual hierarchy&lt;/li&gt;
&lt;li&gt;Categories for filtering&lt;/li&gt;
&lt;li&gt;"Featured" section for best work&lt;/li&gt;
&lt;li&gt;Detailed case studies on separate pages&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Color Contrast in Dark Mode
&lt;/h3&gt;

&lt;p&gt;Making sure text is readable while keeping the design modern required testing with accessibility tools. Aim for at least 4.5:1 contrast ratio.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Takeaways
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Design Tokens Save Time&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Setting up CSS variables for colors, spacing, and typography at the start made the entire build more consistent and easier to maintain.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. TypeScript Is Worth The Setup&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Yes, it takes longer initially. But catching errors at compile-time instead of runtime? Priceless.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Accessibility Isn't Extra Work&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Use semantic HTML, add ARIA labels where needed, test with keyboard navigation. It's not hard, just intentional.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Performance Is a Feature&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Fast sites convert better. Optimize from day one:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Compress images&lt;/li&gt;
&lt;li&gt;Lazy load below-the-fold content&lt;/li&gt;
&lt;li&gt;Minimize JavaScript&lt;/li&gt;
&lt;li&gt;Use CDN (Vercel Edge Network)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;5. Ship, Then Iterate&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
I could've spent months perfecting every detail. Instead, I launched with 80% done and improved based on real feedback.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;The portfolio is live, but I'm just getting started:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Full Blog Integration&lt;/strong&gt; - Moving my content from DEV to my own platform&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Case Studies&lt;/strong&gt; - Deep dives into project development&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interactive Demos&lt;/strong&gt; - Live code examples visitors can play with&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Newsletter&lt;/strong&gt; - Weekly tips and insights&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Theme Toggle&lt;/strong&gt; - User choice between dark and light modes&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  My Dev Community Journey
&lt;/h2&gt;

&lt;p&gt;I've been sharing what I learn here on DEV:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/mahendra_nagpure/-learn-only-what-matters-in-javascript-my-roadmap-from-zero-to-advanced-32id"&gt;Learn Only What Matters in JavaScript - My Roadmap&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dev.to/mahendra_nagpure/learn-only-that-matters-in-css-384e"&gt;Learn Only That Matters In CSS&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The concept of "learning in public" has been transformative. Every tutorial solidifies my understanding while helping others. Win-win.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Building this portfolio taught me more than any tutorial could. If you're considering building your own:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Just Start&lt;/strong&gt; - Don't wait for the perfect idea or tech stack&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Be Authentic&lt;/strong&gt; - Let your personality shine through&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Prioritize Performance&lt;/strong&gt; - Speed matters more than fancy features&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Keep It Simple&lt;/strong&gt; - Better to have 3 polished features than 10 half-baked ones&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Iterate Forever&lt;/strong&gt; - Version 1.0 is just the beginning  &lt;/p&gt;

&lt;h2&gt;
  
  
  Let's Connect!
&lt;/h2&gt;

&lt;p&gt;I'm always happy to chat with fellow developers about projects, collaboration, or just web dev in general.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Portfolio: &lt;a href="https://mahendranagpure.com" rel="noopener noreferrer"&gt;mahendranagpure.com&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; LinkedIn: &lt;a href="https://www.linkedin.com/in/mahendra-nagpure-0a64b522b/" rel="noopener noreferrer"&gt;mahendra-nagpure&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; GitHub: &lt;a href="https://github.com/Mahendra111111" rel="noopener noreferrer"&gt;Mahendra111111&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; Email: &lt;a href="mailto:work@mahendranagpure.com"&gt;work@mahendranagpure.com&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What about you?&lt;/strong&gt; What's the most challenging part of building your portfolio? Drop a comment below - I'd love to hear your experiences!&lt;/p&gt;




&lt;p&gt;&lt;em&gt;If you found this helpful, consider following me here on DEV for more web development content. I share practical tutorials on JavaScript, CSS, React, and full-stack development.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Happy coding! &lt;/p&gt;

</description>
      <category>portfolio</category>
      <category>react</category>
      <category>nextjs</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Learn Only That Matters in JavaScript</title>
      <dc:creator>Mahendra Nagpure</dc:creator>
      <pubDate>Sat, 03 May 2025 11:13:21 +0000</pubDate>
      <link>https://dev.to/mahendra_nagpure/-learn-only-what-matters-in-javascript-my-roadmap-from-zero-to-advanced-32id</link>
      <guid>https://dev.to/mahendra_nagpure/-learn-only-what-matters-in-javascript-my-roadmap-from-zero-to-advanced-32id</guid>
      <description>&lt;p&gt;Hey Devs! 👋&lt;br&gt;
I recently went &lt;strong&gt;all-in&lt;/strong&gt; on learning JavaScript—from the absolute basics to the concepts behind how JS works under the hood. But here’s the twist:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;❌ I didn’t learn “everything.”&lt;br&gt;
✅ I learned &lt;strong&gt;only what really matters&lt;/strong&gt; to build real-world projects &amp;amp; crack interviews.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Let me share what I focused on 👇&lt;/p&gt;




&lt;h2&gt;
  
  
  1️⃣ &lt;code&gt;var&lt;/code&gt;, &lt;code&gt;let&lt;/code&gt;, &lt;code&gt;const&lt;/code&gt;: What's the Real Difference?
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;y&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;20&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;z&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;30&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="nx"&gt;x&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// ✅ allowed&lt;/span&gt;
&lt;span class="nx"&gt;y&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// ✅ allowed&lt;/span&gt;
&lt;span class="nx"&gt;z&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;300&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="c1"&gt;// ❌ Error: Assignment to constant variable&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;var&lt;/code&gt; is function-scoped, while &lt;code&gt;let&lt;/code&gt; &amp;amp; &lt;code&gt;const&lt;/code&gt; are block-scoped.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;const&lt;/code&gt; can't be reassigned.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;let&lt;/code&gt; and &lt;code&gt;const&lt;/code&gt; — forget &lt;code&gt;var&lt;/code&gt; in modern JS.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  2️⃣ Hoisting 🏗️
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// undefined&lt;/span&gt;
&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="nf"&gt;sayHi&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// "Hi!"&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;sayHi&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hi!&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;var&lt;/code&gt; gets hoisted with &lt;strong&gt;undefined&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Functions get hoisted completely&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  3️⃣ Data Types 💡
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Primitives&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;num&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Hello&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;// Reference&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;obj&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Dev&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;arr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Learn the &lt;strong&gt;difference&lt;/strong&gt; between primitive and reference types&lt;/li&gt;
&lt;li&gt;Reference types are stored in heap memory&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  4️⃣ Conditionals &amp;amp; Loops 🔁
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Runs!&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 0, 1, 2&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Master &lt;code&gt;if&lt;/code&gt;, &lt;code&gt;else&lt;/code&gt;, &lt;code&gt;switch&lt;/code&gt;, &lt;code&gt;for&lt;/code&gt;, &lt;code&gt;while&lt;/code&gt;, &lt;code&gt;do while&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  5️⃣ Functions = Power 💪
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;greet&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="s2"&gt;`Hello, &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;greetArrow&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="s2"&gt;`Hello, &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;First-class citizens ✅&lt;/li&gt;
&lt;li&gt;You can pass them, return them, assign them&lt;/li&gt;
&lt;li&gt;Understand &lt;code&gt;callback&lt;/code&gt;, &lt;code&gt;arrow&lt;/code&gt;, &lt;code&gt;pure&lt;/code&gt;, &lt;code&gt;higher-order&lt;/code&gt;, &lt;code&gt;IIFE&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  6️⃣ Arrays &amp;amp; Objects 🔧
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;nums&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="nx"&gt;nums&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;push&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// [1, 2, 3, 4]&lt;/span&gt;

&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Dev&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;22&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="nx"&gt;user&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;city&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Pune&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Must-know methods: &lt;code&gt;push&lt;/code&gt;, &lt;code&gt;pop&lt;/code&gt;, &lt;code&gt;shift&lt;/code&gt;, &lt;code&gt;unshift&lt;/code&gt;, &lt;code&gt;map&lt;/code&gt;, &lt;code&gt;filter&lt;/code&gt;, &lt;code&gt;reduce&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Destructuring simplifies access
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  7️⃣ Execution Context &amp;amp; Scope 🔍
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;outer&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;a&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;inner&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;a&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// 10&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="nf"&gt;inner&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nf"&gt;outer&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Lexical scope &amp;amp; closures&lt;/li&gt;
&lt;li&gt;Understand call stack, heap, and memory allocation&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  8️⃣ &lt;code&gt;this&lt;/code&gt;, &lt;code&gt;call&lt;/code&gt;, &lt;code&gt;apply&lt;/code&gt;, &lt;code&gt;bind&lt;/code&gt; 🤯
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;obj&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Dev&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;greet&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Hello, &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;},&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;

&lt;span class="nx"&gt;obj&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;greet&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// Hello, Dev&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Know how &lt;code&gt;this&lt;/code&gt; behaves in different contexts&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;.call()&lt;/code&gt;, &lt;code&gt;.apply()&lt;/code&gt;, &lt;code&gt;.bind()&lt;/code&gt; to control &lt;code&gt;this&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  9️⃣ DOM Manipulation 📱
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;btn&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;clickMe&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;btn&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;addEventListener&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;click&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;body&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;background&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;lightblue&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Select, edit, and style HTML elements&lt;/li&gt;
&lt;li&gt;Build interactivity in your frontend&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔟 ES6+ Features 💎
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;greet&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Guest&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Hello, &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Dev&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;22&lt;/span&gt; &lt;span class="p"&gt;};&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;age&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Default params ✅&lt;/li&gt;
&lt;li&gt;Destructuring ✅&lt;/li&gt;
&lt;li&gt;Spread/rest operators ✅&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔄 Asynchronous JavaScript ⏳
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;setTimeout&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Runs after 2s&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="mi"&gt;2000&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Promises&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;fetchData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;
  &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Promise&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;resolve&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;reject&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nf"&gt;resolve&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Data fetched!&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="nf"&gt;fetchData&lt;/span&gt;&lt;span class="p"&gt;().&lt;/span&gt;&lt;span class="nf"&gt;then&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Learn &lt;code&gt;setTimeout&lt;/code&gt;, &lt;code&gt;Promises&lt;/code&gt;, &lt;code&gt;async/await&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Understand Event Loop, Web APIs, and Callbacks&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  👷 Prototype &amp;amp; OOP in JS
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;Person&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;Person&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;prototype&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;sayHello&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;function &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Hi, I'm &lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="k"&gt;this&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;};&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Person&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Dev&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;user&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;sayHello&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt; &lt;span class="c1"&gt;// Hi, I'm Dev&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Constructor functions&lt;/li&gt;
&lt;li&gt;Prototypes and inheritance&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;new&lt;/code&gt; keyword and how objects are created&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  📁 Bonus: My Practice Code
&lt;/h2&gt;

&lt;p&gt;I’ve put all my examples in a GitHub repo for easy access:&lt;br&gt;
🔗 &lt;a href="https://github.com/Mahendra111111/Javascript_practiceset" rel="noopener noreferrer"&gt;https://github.com/Mahendra111111/Javascript_practiceset&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  👋 Final Words
&lt;/h2&gt;

&lt;p&gt;JavaScript can feel overwhelming—but if you stick to &lt;strong&gt;what truly matters&lt;/strong&gt;, you’ll get productive fast.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Learn Only That Matters In CSS</title>
      <dc:creator>Mahendra Nagpure</dc:creator>
      <pubDate>Sun, 27 Apr 2025 11:10:28 +0000</pubDate>
      <link>https://dev.to/mahendra_nagpure/learn-only-that-matters-in-css-384e</link>
      <guid>https://dev.to/mahendra_nagpure/learn-only-that-matters-in-css-384e</guid>
      <description>&lt;h1&gt;
  
  
  CSS That Actually Matters: Learn Only What You Really Need
&lt;/h1&gt;

&lt;p&gt;If you want to build clean, professional websites, you don’t need to learn every tiny thing in CSS — just the parts that actually make a difference. Let’s focus on what really matters and skip the unnecessary stuff.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. First Things First: Linking CSS to HTML
&lt;/h2&gt;

&lt;p&gt;Before you even think about styling, make sure your CSS file is correctly linked to your HTML.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Always add your &lt;code&gt;&amp;lt;link&amp;gt;&lt;/code&gt; tag inside the &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt; of your HTML.&lt;/li&gt;
&lt;li&gt;Double-check the file name and path — one small typo can break all your styles.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;link&lt;/span&gt; &lt;span class="na"&gt;rel=&lt;/span&gt;&lt;span class="s"&gt;"stylesheet"&lt;/span&gt; &lt;span class="na"&gt;href=&lt;/span&gt;&lt;span class="s"&gt;"style.css"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  2. How to Target Elements: IDs vs Classes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Use &lt;strong&gt;IDs&lt;/strong&gt; (&lt;code&gt;#&lt;/code&gt;) when you’re styling a single, unique element.&lt;/li&gt;
&lt;li&gt;Use &lt;strong&gt;classes&lt;/strong&gt; (&lt;code&gt;.&lt;/code&gt;) when you want to style multiple elements the same way.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;id=&lt;/span&gt;&lt;span class="s"&gt;"main-heading"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Welcome!&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"card"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Card 1&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;div&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"card"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Card 2&lt;span class="nt"&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nf"&gt;#main-heading&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;navy&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nc"&gt;.card&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;border&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;1px&lt;/span&gt; &lt;span class="nb"&gt;solid&lt;/span&gt; &lt;span class="m"&gt;#ccc&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  3. Percentages and Measurements: Not Everything is in Pixels
&lt;/h2&gt;

&lt;p&gt;If you only use &lt;code&gt;px&lt;/code&gt; for everything, your website might look weird on different screens.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use &lt;code&gt;%&lt;/code&gt;, &lt;code&gt;vw&lt;/code&gt;, and &lt;code&gt;vh&lt;/code&gt; for responsiveness.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;em&lt;/code&gt; and &lt;code&gt;rem&lt;/code&gt; to make font sizes scalable.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Quick tips:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;%&lt;/code&gt; → based on the parent size&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;vw&lt;/code&gt; → based on viewport width&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;em&lt;/code&gt; and &lt;code&gt;rem&lt;/code&gt; → great for fonts that adjust better&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  4. Positioning and Spacing: How Layouts Actually Work
&lt;/h2&gt;

&lt;p&gt;Good design is all about spacing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Margin&lt;/strong&gt; adds space outside the element.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Padding&lt;/strong&gt; adds space inside the element.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Positioning helps you control exactly where an element sits on the page. You need both for clean layouts.&lt;/p&gt;




&lt;h2&gt;
  
  
  5. Backgrounds: Size and Position Like a Pro
&lt;/h2&gt;

&lt;p&gt;When you add background images, don’t just slap them on.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Use &lt;code&gt;background-size: cover;&lt;/code&gt; to make sure the image covers the container without stretching weirdly.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;background-position: center;&lt;/code&gt; to center the image perfectly.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nc"&gt;.banner&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;background-image&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sx"&gt;url('banner.jpg')&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;background-size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;cover&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;background-position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;center&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  6. &lt;code&gt;position: absolute&lt;/code&gt; — What It Actually Means
&lt;/h2&gt;

&lt;p&gt;When you give something &lt;code&gt;position: absolute&lt;/code&gt;, it basically jumps out of the normal page flow.&lt;br&gt;&lt;br&gt;
It’s now positioned based on its nearest positioned ancestor (or the page itself if none exists).&lt;/p&gt;

&lt;p&gt;It’s perfect when you want to place something &lt;strong&gt;exactly&lt;/strong&gt; somewhere — like badges or tooltips.&lt;/p&gt;


&lt;h2&gt;
  
  
  7. &lt;code&gt;position: relative&lt;/code&gt; — Not As Complicated As It Sounds
&lt;/h2&gt;

&lt;p&gt;Relative positioning means the element stays in the normal flow but can be nudged around a little.&lt;/p&gt;

&lt;p&gt;So you can move it without messing up the rest of the layout.&lt;/p&gt;


&lt;h2&gt;
  
  
  8. CSS Positioning — The Big Picture
&lt;/h2&gt;

&lt;p&gt;You’ll mainly use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;static&lt;/code&gt; (default)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;relative&lt;/code&gt; (adjust slightly)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;absolute&lt;/code&gt; (remove and place exactly)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;fixed&lt;/code&gt; (sticks to the screen even when you scroll)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The real magic happens when you combine &lt;strong&gt;relative&lt;/strong&gt; and &lt;strong&gt;absolute&lt;/strong&gt; smartly.&lt;br&gt;&lt;br&gt;
That’s how you build dynamic layouts.&lt;/p&gt;


&lt;h2&gt;
  
  
  9. Flexbox — Your Best Friend for Layouts
&lt;/h2&gt;

&lt;p&gt;Flexbox makes building layouts way easier.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Add &lt;code&gt;display: flex;&lt;/code&gt; to the parent container.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;justify-content&lt;/code&gt; to align horizontally.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;align-items&lt;/code&gt; to align vertically.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nc"&gt;.wrapper&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;flex&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;justify-content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;center&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;align-items&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;center&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  Wrapping It Up
&lt;/h1&gt;

&lt;p&gt;You don’t need to memorize hundreds of random CSS properties.&lt;br&gt;&lt;br&gt;
Just get really good at these essentials:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Linking CSS properly&lt;/li&gt;
&lt;li&gt;Targeting with IDs and classes&lt;/li&gt;
&lt;li&gt;Using flexible measurements&lt;/li&gt;
&lt;li&gt;Mastering spacing and positioning&lt;/li&gt;
&lt;li&gt;Nailing background control&lt;/li&gt;
&lt;li&gt;Becoming comfortable with Flexbox&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Master these, and you’ll already be ahead of most beginner web developers.&lt;/strong&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Javascript</title>
      <dc:creator>Mahendra Nagpure</dc:creator>
      <pubDate>Tue, 15 Apr 2025 06:10:50 +0000</pubDate>
      <link>https://dev.to/mahendra_nagpure/javascript-570a</link>
      <guid>https://dev.to/mahendra_nagpure/javascript-570a</guid>
      <description></description>
      <category>javascript</category>
    </item>
  </channel>
</rss>
