<?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: Naman Sachdeva</title>
    <description>The latest articles on DEV Community by Naman Sachdeva (@naman_sachdeva).</description>
    <link>https://dev.to/naman_sachdeva</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%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png</url>
      <title>DEV Community: Naman Sachdeva</title>
      <link>https://dev.to/naman_sachdeva</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/naman_sachdeva"/>
    <language>en</language>
    <item>
      <title>Check out this post</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Tue, 26 May 2026 04:55:12 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/check-out-this-post-747</link>
      <guid>https://dev.to/naman_sachdeva/check-out-this-post-747</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4gj0" class="crayons-story__hidden-navigation-link"&gt;I Made My Website "Alive" using Physics (Vanilla JS Experiment Part 2) 🚀&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/naman_sachdeva" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png" alt="naman_sachdeva profile" class="crayons-avatar__image" width="512" height="512"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/naman_sachdeva" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Naman Sachdeva
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Naman Sachdeva
                
              
              &lt;div id="story-author-preview-content-3750267" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/naman_sachdeva" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png" class="crayons-avatar__image" alt="" width="512" height="512"&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Naman Sachdeva&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4gj0" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4gj0" id="article-link-3750267"&gt;
          I Made My Website "Alive" using Physics (Vanilla JS Experiment Part 2) 🚀
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/webdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;webdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/programming"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;programming&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/javascript"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;javascript&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/beginners"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;beginners&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4gj0" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;5&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4gj0#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            2 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
    </item>
    <item>
      <title>I Made My Website "Alive" using Physics (Vanilla JS Experiment Part 2) 🚀</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Mon, 25 May 2026 14:11:34 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4gj0</link>
      <guid>https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4gj0</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;A few days ago, I wrote about getting bored with flat, static websites and trying to build something that actually reacts to the user. I wanted the DOM to feel physical.&lt;br&gt;
For my next update, my original plan was to go completely overboard — I'm talking HTML5 Canvas, complex math, Hooke's Law for spring physics, and particles that react to cursor velocity.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Here is what I added to make the UI feel even more alive:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.True Magnetic UI (Hooke's Law in JS) 🧲&lt;/strong&gt;&lt;br&gt;
In the first version, elements just followed the cursor. Now, they have mass and tension.I implemented a physics engine for the buttons using Hooke’s Law ($F = -kx$). When your cursor gets within a certain radius, the button snaps towards it. But the magic happens when you pull away — it doesn't just snap back; it wobbles and settles down with friction.&lt;br&gt;
&lt;code&gt;// The core kinematics engine making it happen&lt;br&gt;
const forceX = (targetX - currentX) * stiffness;&lt;br&gt;
velX = (velX + forceX) * friction;&lt;br&gt;
currentX += velX;&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;2. Velocity-Reactive Particles (Canvas) ✨&lt;/strong&gt;&lt;br&gt;
Backgrounds shouldn't just sit there. I added an HTML5 Canvas layer with a particle grid.&lt;br&gt;
But they aren't just floating randomly. The particles track the instantaneous velocity of your cursor.&lt;/p&gt;

&lt;p&gt;If you move your mouse slowly, the particles gently move out of the way.&lt;br&gt;
If you swipe your mouse aggressively, the particles calculate the momentum, scatter violently, and then spring back to their original grid positions.&lt;br&gt;
It feels like swiping your hand through a pool of glowing water.&lt;br&gt;
&lt;strong&gt;3. Integrating it into "Cyber-Hand OS" 💻&lt;/strong&gt;&lt;br&gt;
I'm taking all these micro-interactions and using them to build out the control panel for my larger project, Cyber-Hand OS. Starting with simple ON/OFF states for volume and notifications, but layering these fluid physics on top of them.&lt;br&gt;
&lt;strong&gt;Sometimes, over-engineering a simple button is exactly what you need to remember why frontend development is so much fun.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Check it out!&lt;br&gt;
You can play with the live demo here:&lt;br&gt;
&lt;a href="https://naman9104.github.io/Updated-experiment/" rel="noopener noreferrer"&gt;https://naman9104.github.io/Updated-experiment/&lt;/a&gt;&lt;br&gt;
And the full code is on my repo: &lt;a href="https://github.com/naman9104/Updated-experiment" rel="noopener noreferrer"&gt;https://github.com/naman9104/Updated-experiment&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Let me know what you guys think! Should I add collision detection next?
&lt;/h2&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>beginners</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Sat, 23 May 2026 04:08:27 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/-4ajg</link>
      <guid>https://dev.to/naman_sachdeva/-4ajg</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4n4h" class="crayons-story__hidden-navigation-link"&gt;I Made My Website "Alive" using Physics (Vanilla JS Experiment Part 2) 🚀&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/naman_sachdeva" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png" alt="naman_sachdeva profile" class="crayons-avatar__image" width="512" height="512"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/naman_sachdeva" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Naman Sachdeva
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Naman Sachdeva
                
              
              &lt;div id="story-author-preview-content-3710810" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/naman_sachdeva" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png" class="crayons-avatar__image" alt="" width="512" height="512"&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Naman Sachdeva&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4n4h" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 20&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4n4h" id="article-link-3710810"&gt;
          I Made My Website "Alive" using Physics (Vanilla JS Experiment Part 2) 🚀
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/webdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;webdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/programming"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;programming&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/javascript"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;javascript&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/css"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;css&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4n4h" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;6&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4n4h#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            2 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
    </item>
    <item>
      <title>I Made My Website "Alive" using Physics (Vanilla JS Experiment Part 2) 🚀</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Wed, 20 May 2026 17:05:43 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4n4h</link>
      <guid>https://dev.to/naman_sachdeva/i-made-my-website-alive-using-physics-vanilla-js-experiment-part-2-4n4h</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;A few days ago, I wrote about getting bored with flat, static websites and trying to build something that actually reacts to the user. I wanted the DOM to feel physical.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;For my next update, my original plan was to go completely overboard — I'm talking HTML5 Canvas, complex math, Hooke's Law for spring physics, and particles that react to cursor velocity.&lt;/p&gt;

&lt;p&gt;Here is what I added to make the UI feel even more alive:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.True Magnetic UI (Hooke's Law in JS) 🧲&lt;/strong&gt;&lt;br&gt;
In the first version, elements just followed the cursor. Now, they have mass and tension.I implemented a physics engine for the buttons using Hooke’s Law ($F = -kx$). When your cursor gets within a certain radius, the button snaps towards it. But the magic happens when you pull away — it doesn't just snap back; it wobbles and settles down with friction.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// The core kinematics engine making it happen&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;forceX&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;targetX&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="nx"&gt;currentX&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;stiffness&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;velX&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;velX&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;forceX&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nx"&gt;friction&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="nx"&gt;currentX&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="nx"&gt;velX&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;2. Velocity-Reactive Particles (Canvas) ✨&lt;/strong&gt;&lt;br&gt;
Backgrounds shouldn't just sit there. I added an HTML5 Canvas layer with a particle grid.&lt;br&gt;
But they aren't just floating randomly. The particles track the instantaneous velocity of your cursor.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you move your mouse slowly, the particles gently move out of the way.&lt;/li&gt;
&lt;li&gt;If you swipe your mouse aggressively, the particles calculate the momentum, scatter violently, and then spring back to their original grid positions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It feels like swiping your hand through a pool of glowing water.&lt;br&gt;
&lt;strong&gt;3. Integrating it into "Cyber-Hand OS" 💻&lt;/strong&gt;&lt;br&gt;
I'm taking all these micro-interactions and using them to build out the control panel for my larger project, Cyber-Hand OS. Starting with simple ON/OFF states for volume and notifications, but layering these fluid physics on top of them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sometimes, over-engineering a simple button is exactly what you need to remember why frontend development is so much fun.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Check it out!&lt;br&gt;
You can play with the live demo here:&lt;br&gt;
&lt;a href="https://naman9104.github.io/Updated-experiment/" rel="noopener noreferrer"&gt;https://naman9104.github.io/Updated-experiment/&lt;/a&gt;&lt;br&gt;
And the full code is on my repo: &lt;a href="https://github.com/naman9104/Updated-experiment" rel="noopener noreferrer"&gt;https://github.com/naman9104/Updated-experiment&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Let me know what you guys think! Should I add collision detection next?
&lt;/h2&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>css</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Sun, 17 May 2026 10:48:08 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/-3e5p</link>
      <guid>https://dev.to/naman_sachdeva/-3e5p</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/naman_sachdeva/trying-to-learn-js-through-an-experiment-8oc" class="crayons-story__hidden-navigation-link"&gt;TRYING TO LEARN JS THROUGH AN EXPERIMENT&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/naman_sachdeva" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png" alt="naman_sachdeva profile" class="crayons-avatar__image" width="512" height="512"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/naman_sachdeva" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Naman Sachdeva
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Naman Sachdeva
                
              
              &lt;div id="story-author-preview-content-3687300" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/naman_sachdeva" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png" class="crayons-avatar__image" alt="" width="512" height="512"&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Naman Sachdeva&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/naman_sachdeva/trying-to-learn-js-through-an-experiment-8oc" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 17&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/naman_sachdeva/trying-to-learn-js-through-an-experiment-8oc" id="article-link-3687300"&gt;
          TRYING TO LEARN JS THROUGH AN EXPERIMENT
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/javascript"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;javascript&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/webdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;webdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/opensource"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;opensource&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/beginners"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;beginners&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/naman_sachdeva/trying-to-learn-js-through-an-experiment-8oc" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;5&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/naman_sachdeva/trying-to-learn-js-through-an-experiment-8oc#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            1 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
    </item>
    <item>
      <title>TRYING TO LEARN JS THROUGH AN EXPERIMENT</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Sun, 17 May 2026 10:47:44 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/trying-to-learn-js-through-an-experiment-8oc</link>
      <guid>https://dev.to/naman_sachdeva/trying-to-learn-js-through-an-experiment-8oc</guid>
      <description>&lt;p&gt;Most websites today are fast.&lt;br&gt;
Responsive. Clean.&lt;/p&gt;

&lt;p&gt;But honestly?&lt;/p&gt;

&lt;p&gt;A lot of them don’t feel anything anymore.&lt;/p&gt;

&lt;p&gt;Everything became:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;predictable&lt;/li&gt;
&lt;li&gt;flat&lt;/li&gt;
&lt;li&gt;overly structured&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So instead of building another “productive” project, I decided to build something completely unnecessary 😭&lt;br&gt;
Project link:- &lt;a href="https://naman9104.github.io/Cursor/" rel="noopener noreferrer"&gt;https://naman9104.github.io/Cursor/&lt;/a&gt;&lt;br&gt;
I tried making a website that feels… alive.&lt;/p&gt;

&lt;p&gt;Not with AI.&lt;br&gt;
Not with fancy frameworks.&lt;/p&gt;

&lt;p&gt;Just motion, interaction, and tiny details.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Idea&lt;/strong&gt;&lt;br&gt;
I asked myself:&lt;/p&gt;

&lt;p&gt;What if the cursor affected the environment around it?&lt;/p&gt;

&lt;p&gt;So I started experimenting with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a glowing cursor&lt;/li&gt;
&lt;li&gt;magnetic buttons&lt;/li&gt;
&lt;li&gt;floating particles&lt;/li&gt;
&lt;li&gt;smooth movement physics&lt;/li&gt;
&lt;li&gt;cinematic UI effects
And somehow this tiny experiment slowly turned into one of the most fun things I’ve built in a while.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;*&lt;em&gt;Still improving it, but this project reminded me why I started learning frontend in the first place.&lt;br&gt;
To make things that feel cool.&lt;br&gt;
*&lt;/em&gt;&lt;br&gt;
If you want updates, improvements, or a part 2 — comment below 👀&lt;br&gt;
Will keep adding new effects and features for sure 😄&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>opensource</category>
      <category>beginners</category>
    </item>
    <item>
      <title>I Got Bored of “Normal” Websites… So I Tried Making One Feel Alive ✨</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Sun, 17 May 2026 09:30:54 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/i-got-bored-of-normal-websites-so-i-tried-making-one-feel-alive-285a</link>
      <guid>https://dev.to/naman_sachdeva/i-got-bored-of-normal-websites-so-i-tried-making-one-feel-alive-285a</guid>
      <description>&lt;p&gt;Most websites today are fast.&lt;br&gt;
Responsive. Clean.&lt;/p&gt;

&lt;p&gt;But honestly?&lt;/p&gt;

&lt;p&gt;A lot of them don’t feel anything anymore.&lt;/p&gt;

&lt;p&gt;Everything became:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;predictable&lt;/li&gt;
&lt;li&gt;flat&lt;/li&gt;
&lt;li&gt;overly structured&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So instead of building another “productive” project, I decided to build something completely unnecessary 😭&lt;br&gt;
Project link:- &lt;a href="https://naman9104.github.io/Cursor/" rel="noopener noreferrer"&gt;https://naman9104.github.io/Cursor/&lt;/a&gt;&lt;br&gt;
I tried making a website that feels… alive.&lt;/p&gt;

&lt;p&gt;Not with AI.&lt;br&gt;
Not with fancy frameworks.&lt;/p&gt;

&lt;p&gt;Just motion, interaction, and tiny details.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;The Idea&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;I asked myself:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What if the cursor affected the environment around it?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;So I started experimenting with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a glowing cursor&lt;/li&gt;
&lt;li&gt;magnetic buttons&lt;/li&gt;
&lt;li&gt;floating particles&lt;/li&gt;
&lt;li&gt;smooth movement physics&lt;/li&gt;
&lt;li&gt;cinematic UI effects&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And somehow this tiny experiment slowly turned into one of the most fun things I’ve built in a while.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Still improving it, but this project reminded me why I started learning frontend in the first place.&lt;br&gt;
To make things that feel cool.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;If you want updates, improvements, or a part 2 — comment below 👀&lt;br&gt;
Will keep adding new effects and features for sure 😄&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>frontend</category>
      <category>css</category>
    </item>
    <item>
      <title>“Not a startup, not a dev team — just me building an AI for emotions.❤️🤖"</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Tue, 28 Oct 2025 12:27:05 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/i-built-a-mood-based-gradient-quote-generator-powered-by-ai-515i</link>
      <guid>https://dev.to/naman_sachdeva/i-built-a-mood-based-gradient-quote-generator-powered-by-ai-515i</guid>
      <description>&lt;p&gt;&lt;strong&gt;Hey Guys 👋&lt;/strong&gt;&lt;br&gt;
I’m still learning — not a full-stack expert, not building a huge startup — just someone who likes playing with code and visuals.&lt;/p&gt;

&lt;p&gt;I recently made this little tool: you type a mood (like “dreamy ocean”, “sunset hustle”, or “calm coding flow”) and it generates a background gradient and a fresh motivational quote for you. If you’ve got your own server/API key, it can even call an AI backend to make totally custom gradients + quotes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✅ What it does&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you pick from predefined moods (Happy, Calm, Sad, Energetic), it uses preset gradients + quotes.&lt;/li&gt;
&lt;li&gt;If you choose “AI” mode and type your own prompt, the tool will:

&lt;ol&gt;
&lt;li&gt;Send the prompt to a backend endpoint /generate-gradient&lt;/li&gt;
&lt;li&gt;Receive a custom gradient (2 HEX colours) + a quote from AI&lt;/li&gt;
&lt;li&gt;Apply the gradient and adjust the text colour automatically so
it’s always readable&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;🛠 Why I built it&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I wanted something more than static themes: a tool that feels your mood and paints accordingly. Also, I found learning this colour-contrast logic (checking brightness and adjusting text colour) surprisingly fun.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🧩 Tech bits&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Frontend: HTML + CSS + vanilla JS — no big framework.&lt;/li&gt;
&lt;li&gt;Backend (optional): Express + Node → endpoint accepts JSON { prompt } and returns { gradient, quote }.&lt;/li&gt;
&lt;li&gt;Bonus: client-side checks for URL validity, fallback when server is missing, and smooth background + text transition.
🚀&lt;a href="https://updated-mood-gradient-generator.onrender.com" rel="noopener noreferrer"&gt; Try it out&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Would love your feedback — is the colour contrast good? Does the quote feel fresh?&lt;/p&gt;

&lt;p&gt;Thanks for checking this out — and if you’re building your own little tool too, drop your link below!&lt;/p&gt;

&lt;p&gt;💬 Would love to hear your thoughts — drop a comment if you tried it, found a bug, or have an idea to improve it!&lt;br&gt;
—Naman Sachdeva&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>ai</category>
      <category>javascript</category>
      <category>css</category>
    </item>
    <item>
      <title>🧮 Build a Smart Calculator Using HTML, CSS &amp; JavaScript (With Keyboard Support)</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Mon, 27 Oct 2025 16:26:55 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/build-a-smart-calculator-using-html-css-javascript-with-keyboard-support-239m</link>
      <guid>https://dev.to/naman_sachdeva/build-a-smart-calculator-using-html-css-javascript-with-keyboard-support-239m</guid>
      <description>&lt;p&gt;💡 Description&lt;/p&gt;

&lt;p&gt;This project is a clean and smart web-based calculator built using HTML, CSS, and JavaScript.&lt;br&gt;
It doesn’t just look good — it behaves intelligently:&lt;br&gt;
no operator spamming, supports negative numbers, and clears errors with one tap.&lt;/p&gt;

&lt;p&gt;A perfect project if you’re learning DOM manipulation and JavaScript event handling.&lt;/p&gt;

&lt;p&gt;🚀 Features&lt;/p&gt;

&lt;p&gt;✅ Perform arithmetic operations → +, -, *, /, %&lt;br&gt;
✅ Handles negative numbers → like -5+4&lt;br&gt;
✅ Blocks invalid sequences like ++, */, etc.&lt;br&gt;
✅ Shows "Error" on invalid inputs (deletes in one Backspace)&lt;br&gt;
✅ Works with both buttons and keyboard&lt;br&gt;
✅ Simple, responsive, and modern UI&lt;/p&gt;

&lt;p&gt;🎨 UI Design:&lt;br&gt;
The layout is built with minimal HTML and modern CSS —&lt;br&gt;
a smooth gradient background, soft shadows, and clean button interactions make it feel polished.&lt;/p&gt;

&lt;p&gt;You can easily tweak the theme colors or button styles to make it uniquely yours.&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://naman9104.github.io/Calculator/" rel="noopener noreferrer"&gt;Try it now on GitHub Pages&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🌱 What You’ll Learn&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Handling keyboard events in JS&lt;/li&gt;
&lt;li&gt;Preventing invalid user inputs&lt;/li&gt;
&lt;li&gt;Real-time DOM updates&lt;/li&gt;
&lt;li&gt;Display error management&lt;/li&gt;
&lt;li&gt;Clean, responsive UI design&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;⚙️ Future Plans&lt;/p&gt;

&lt;p&gt;🧩 Add Light/Dark mode toggle&lt;br&gt;
🧮 Add Scientific functions (sin, cos, log, etc.)&lt;br&gt;
📜 Add Calculation History&lt;br&gt;
🌐 Connect custom domain (e.g., calculatorbynaman.tech)&lt;/p&gt;

&lt;p&gt;💬 Final Thoughts&lt;/p&gt;

&lt;p&gt;This isn’t just a calculator — it’s a clean demonstration of writing smart JavaScript logic with a responsive front end.&lt;br&gt;
Try building your own version, or add more features to it!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>backend</category>
      <category>frontend</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Sat, 25 Oct 2025 09:52:55 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/-2f2e</link>
      <guid>https://dev.to/naman_sachdeva/-2f2e</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/naman_sachdeva/mood-gradient-generator-colors-quotes-that-match-your-feelings-57g4" class="crayons-story__hidden-navigation-link"&gt;🎨 Mood Gradient Generator: Colors &amp;amp; Quotes That Match Your Feelings&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/naman_sachdeva" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png" alt="naman_sachdeva profile" class="crayons-avatar__image" width="512" height="512"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/naman_sachdeva" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Naman Sachdeva
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Naman Sachdeva
                
              
              &lt;div id="story-author-preview-content-2959119" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/naman_sachdeva" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3263467%2F9fb5b257-4b98-4a5f-b650-aac44e203188.png" class="crayons-avatar__image" alt="" width="512" height="512"&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Naman Sachdeva&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/naman_sachdeva/mood-gradient-generator-colors-quotes-that-match-your-feelings-57g4" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Oct 25 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/naman_sachdeva/mood-gradient-generator-colors-quotes-that-match-your-feelings-57g4" id="article-link-2959119"&gt;
          🎨 Mood Gradient Generator: Colors &amp;amp; Quotes That Match Your Feelings
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/javascript"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;javascript&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/webdev"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;webdev&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/ai"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;ai&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/css"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;css&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/naman_sachdeva/mood-gradient-generator-colors-quotes-that-match-your-feelings-57g4" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="24" height="24"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;5&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/naman_sachdeva/mood-gradient-generator-colors-quotes-that-match-your-feelings-57g4#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            1 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>ai</category>
      <category>css</category>
    </item>
    <item>
      <title>🎨 Mood Gradient Generator: Colors &amp; Quotes That Match Your Feelings</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Sat, 25 Oct 2025 09:52:24 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/mood-gradient-generator-colors-quotes-that-match-your-feelings-57g4</link>
      <guid>https://dev.to/naman_sachdeva/mood-gradient-generator-colors-quotes-that-match-your-feelings-57g4</guid>
      <description>&lt;p&gt;I built a small web app using HTML, CSS, and JavaScript that changes the background based on your current mood.&lt;br&gt;&lt;br&gt;
Select Happy, Calm, Sad, or Energetic — the background smoothly transitions to a matching gradient!  &lt;/p&gt;

&lt;p&gt;💡 Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GPT server integration for fresh AI-generated quotes&lt;/li&gt;
&lt;li&gt;Responsive design — works offline&lt;/li&gt;
&lt;li&gt;Input text color adapts to background for readability&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is a fun way to combine JS interactivity with colorful UI effects.  &lt;/p&gt;

&lt;p&gt;Try it out and let your mood shine! 🌈&lt;br&gt;
&lt;a href="https://mood-gradient-generator.onrender.com/" rel="noopener noreferrer"&gt;URL For Live Preview&lt;/a&gt;&lt;br&gt;
Note: TO POWER ON THE AI CLICK ON USE GPT,ENTER URL,TAP ON ANY MOOD,RELAX&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>ai</category>
      <category>css</category>
    </item>
    <item>
      <title>Built My First Portfolio Site at 16 — No Frameworks, Just Grit</title>
      <dc:creator>Naman Sachdeva</dc:creator>
      <pubDate>Sun, 15 Jun 2025 11:04:06 +0000</pubDate>
      <link>https://dev.to/naman_sachdeva/clean-portfolio-template-no-setup-just-edit-go-59gn</link>
      <guid>https://dev.to/naman_sachdeva/clean-portfolio-template-no-setup-just-edit-go-59gn</guid>
      <description>&lt;p&gt;I’m 16 — just wanted a simple portfolio.&lt;br&gt;
Not something with 50 npm packages and a PhD in Tailwind.&lt;br&gt;
So I built my own.&lt;/p&gt;

&lt;p&gt;🧪 No frameworks&lt;br&gt;
⚡ No build steps&lt;br&gt;
✏️ Just open index.html, change a few lines — and boom, you’re live.&lt;/p&gt;

&lt;p&gt;🔗 Live Preview&lt;br&gt;
👉 &lt;a href="https://naman9104.github.io/Portfolio-Template/" rel="noopener noreferrer"&gt;https://naman9104.github.io/Portfolio-Template/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📂 GitHub Repo&lt;br&gt;
👉  &lt;a href="https://github.com/naman9104/Portfolio-Template" rel="noopener noreferrer"&gt;https://github.com/naman9104/Portfolio-Template&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr0fgxf148r41gmvhcp7e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr0fgxf148r41gmvhcp7e.png" alt="Screenshot of the portfolio homepage showing a dark-themed layout with a typewriter intro" width="799" height="378"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;✨ Features:&lt;br&gt;
🔤 Typewriter-style animated intro&lt;/p&gt;

&lt;p&gt;🧭 Clean layout with 5 sections&lt;/p&gt;

&lt;p&gt;💡 Dark mode toggle&lt;/p&gt;

&lt;p&gt;📱 Fully responsive&lt;/p&gt;

&lt;p&gt;⚙️ No frameworks, no setup — just HTML, CSS, JS&lt;/p&gt;

&lt;p&gt;✏️ Easy to customize — perfect for beginners&lt;/p&gt;

&lt;p&gt;🛠 How to Use:&lt;br&gt;
Fork the repo&lt;/p&gt;

&lt;p&gt;Open index.html&lt;/p&gt;

&lt;p&gt;Change your name, skills, projects, about, etc.&lt;/p&gt;

&lt;p&gt;Deploy using GitHub Pages.&lt;/p&gt;

&lt;p&gt;🚀 That’s it — you’re live in 5 minutes.&lt;/p&gt;

&lt;p&gt;Inspired by my previous post:&lt;a href="https://dev.to/naman_sachdeva/not-a-full-stack-dev-not-a-startup-just-a-16-yo-with-ideas-pmj"&gt; Not a full-stack dev, not a startup. Just a 16 y/o with ideas&lt;/a&gt;&lt;br&gt;
This portfolio came out of that journey.&lt;/p&gt;

&lt;p&gt;💬 Want to help improve it?&lt;br&gt;
Drop your ideas below 👇&lt;br&gt;
If you remix it, I’d love to see your version!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
