<?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: Aksh Thakkar</title>
    <description>The latest articles on DEV Community by Aksh Thakkar (@akshthakkar).</description>
    <link>https://dev.to/akshthakkar</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%2F3205860%2Fc8a86a19-3c1a-429a-aa6a-47329e0e5585.jpg</url>
      <title>DEV Community: Aksh Thakkar</title>
      <link>https://dev.to/akshthakkar</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/akshthakkar"/>
    <language>en</language>
    <item>
      <title>Why I Built a High-Performance Wallpaper Gallery with Vanilla JS (No React)</title>
      <dc:creator>Aksh Thakkar</dc:creator>
      <pubDate>Mon, 12 Jan 2026 16:42:50 +0000</pubDate>
      <link>https://dev.to/akshthakkar/why-i-built-a-high-performance-wallpaper-gallery-with-vanilla-js-no-react-16bp</link>
      <guid>https://dev.to/akshthakkar/why-i-built-a-high-performance-wallpaper-gallery-with-vanilla-js-no-react-16bp</guid>
      <description>&lt;p&gt;I’ve been collecting wallpapers for years, but most wallpaper sites felt slow, cluttered, or filled with ads.&lt;/p&gt;

&lt;p&gt;So I decided to build my own — WallpaperVerse.&lt;/p&gt;

&lt;p&gt;🔗 Live site: &lt;a href="https://wallpaperverse.akshthakkar.me" rel="noopener noreferrer"&gt;https://wallpaperverse.akshthakkar.me&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What I wanted to build&lt;/p&gt;

&lt;p&gt;A clean, distraction-free wallpaper gallery&lt;/p&gt;

&lt;p&gt;Fast performance, even with large images&lt;/p&gt;

&lt;p&gt;Smooth animations that feel intentional&lt;/p&gt;

&lt;p&gt;Bulk downloads without friction&lt;/p&gt;

&lt;p&gt;Tech stack&lt;/p&gt;

&lt;p&gt;I intentionally avoided frameworks to focus on fundamentals.&lt;/p&gt;

&lt;p&gt;Vanilla HTML, CSS, JavaScript&lt;/p&gt;

&lt;p&gt;GSAP for motion &amp;amp; micro-interactions&lt;/p&gt;

&lt;p&gt;JSZip for bulk downloads&lt;/p&gt;

&lt;p&gt;Optimized images (WebP, lazy loading)&lt;/p&gt;

&lt;p&gt;One interesting challenge&lt;/p&gt;

&lt;p&gt;The auto-scrolling wallpaper carousels.&lt;/p&gt;

&lt;p&gt;Here’s the simplified logic behind the infinite horizontal scroll:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;The "Infinite" Scroll Logic
const grid = document.querySelector('.collection-grid');
const scrollSpeed = 0.5;

// 1. Clone items to double the content length
// This ensures we always have content to scroll into
Array.from(grid.children).forEach(item =&amp;gt; {
  grid.appendChild(item.cloneNode(true));
});

function loop() {
  // 2. Move scroll position slightly every frame
  grid.scrollLeft += scrollSpeed;

  // 3. The Magic Reset
  // When we've scrolled past the original set of items (halfway),
  // instantly snap back to the start (0).
  // Since the content is identical, the user sees no jump.

  if (grid.scrollLeft &amp;gt;= grid.scrollWidth / 2) {
    grid.scrollLeft = 0;
  }

  requestAnimationFrame(loop);
}

// Start the animation

loop();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This approach keeps the motion smooth and continuous without needing complex state management.&lt;/p&gt;

&lt;p&gt;What I learned&lt;/p&gt;

&lt;p&gt;UI polish matters more than flashy features&lt;/p&gt;

&lt;p&gt;Performance is a feature&lt;/p&gt;

&lt;p&gt;Vanilla JS scales surprisingly well when structured properly&lt;/p&gt;

&lt;p&gt;AI tools help most when they speed up thinking, not replace it&lt;/p&gt;

&lt;p&gt;This project helped me understand frontend tradeoffs far better than tutorials ever did.&lt;/p&gt;

&lt;p&gt;If you’re curious, you can check it out here:&lt;br&gt;
👉 &lt;a href="https://wallpaperverse.akshthakkar.me" rel="noopener noreferrer"&gt;https://wallpaperverse.akshthakkar.me&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Feedback is always welcome 🙌&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>frontend</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>AI Image Classification with MobileNet(Tensorflow)</title>
      <dc:creator>Aksh Thakkar</dc:creator>
      <pubDate>Fri, 06 Jun 2025 10:50:23 +0000</pubDate>
      <link>https://dev.to/akshthakkar/ai-image-classification-with-mobilenettensorflow-2o4m</link>
      <guid>https://dev.to/akshthakkar/ai-image-classification-with-mobilenettensorflow-2o4m</guid>
      <description>&lt;p&gt;So recently, I've been wondering how apps like Google Lens or Instagram can just look at a photo and identify it as a  "dog" or "sushi".This sparked my interest, so I decided to explore behind the scenes!&lt;/p&gt;

&lt;p&gt;It's quite simple, actually. I used a pre-trained AI model called MobileNetV2—thanks to TensorFlow—and added a Streamlit user interface on top of it. You can upload any image, and it will identify what it contains and display top 3 matches for that image. It's not always accurate, but it works surprisingly well.&lt;/p&gt;

&lt;h3&gt;
  
  
  What It Does (in Simple Terms):
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;You upload a random image.&lt;/li&gt;
&lt;li&gt;The AI analyzes the image and makes some guesses about what’s in it.&lt;/li&gt;
&lt;li&gt;It shows you the top three guesses along with its confidence levels for each guess.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;It's quite straightforward! The best part? I didn’t train the model myself,  I utilized a pre-trained model that has already learned from millions of photos, making it highly knowledgeable.&lt;/p&gt;

&lt;p&gt;The AI follows a specific format to understand any image you give it. That’s what this function does:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def preprocess_image(image):
    img = np.array(image)
    img = cv2.resize(img, (224, 224))         # Resize to MobileNet's expected size
    img = preprocess_input(img)               # Normalize pixel values
    img = np.expand_dims(img, axis=0)         # Add batch dimension
    return img
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;MobileNetV2 uses a 224x224 image size. Consider,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your 224x224 image = 224 rows and 224 columns = 50,176 tiny squares&lt;/li&gt;
&lt;li&gt;Each square has 3 color &lt;code&gt;values = R, G, B&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;The model looks at all these values and tries to figure out patterns — like edges, shapes, colors, textures.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This part is where the AI does its actual guessing:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;def classify_image(model, image):
    processed_img = preprocess_image(image)
    preds = model.predict(processed_img)
    return decode_predictions(preds, top=3)[0]  # Returns top 3 predictions with labels and %

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;The image goes through the AI model with &lt;code&gt;.predict()&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;The model gives back a bunch of numbers (raw predictions)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;decode_predictions&lt;/code&gt; turns those numbers into real labels like “sneaker” or “toaster”&lt;/li&gt;
&lt;li&gt;Then, it grabs the top 3 guesses — the stuff the model is most confident about&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You're welcome to explore the project at &lt;a href="https://ai-image-classifier-aksh.streamlit.app/" rel="noopener noreferrer"&gt;AI Image Classifier&lt;/a&gt;. Simply upload any image to see how the AI interprets it. I hope you find this experience both interesting and useful! Additionally, here’s a link to the project code on &lt;a href="https://github.com/akshhthakkar/Ai-Image-Classifier" rel="noopener noreferrer"&gt;Github&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>tensorflow</category>
      <category>beginners</category>
    </item>
    <item>
      <title>So, I Got Interested in AI…</title>
      <dc:creator>Aksh Thakkar</dc:creator>
      <pubDate>Wed, 28 May 2025 17:03:35 +0000</pubDate>
      <link>https://dev.to/akshthakkar/so-i-got-interested-in-ai-105i</link>
      <guid>https://dev.to/akshthakkar/so-i-got-interested-in-ai-105i</guid>
      <description>&lt;p&gt;I've always been curious about how things work. Lately, that curiosity has led me to explore Artificial Intelligence.&lt;/p&gt;

&lt;p&gt;So, AI is this crazy smart tech that’s trying to do things humans do—like thinking and learning. But inside AI, there’s this thing called Machine Learning, which is basically teaching computers how to learn stuff without giving them a full instruction manual.&lt;/p&gt;

&lt;p&gt;It's amazing how AI can chat with us, generate art, write code, and even drive cars. At first, it felt like magic. But the more I read about it, the more I realized—it’s not magic, it’s smart use of data, logic, and learning.&lt;/p&gt;

&lt;p&gt;What really fascinates me is how AI learns from examples. You give it data, it finds patterns, and then it starts making decisions or answering questions, kind of like how we learn, just at a much bigger scale.&lt;/p&gt;

&lt;p&gt;Machine Learning is all about feeding computers tons of examples so they can spot trends or make predictions. Then there’s Deep Learning, which is like Machine Learning’s cooler, more advanced sibling. It uses something called neural networks — basically, computer models inspired by how our brain works — to learn even more complex stuff.&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%2F839hgnpwmrjxezqfwqcl.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%2F839hgnpwmrjxezqfwqcl.png" alt="Flowchart showing the relationship between AI, Machine Learning, and Deep Learning" width="800" height="559"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The more I explore AI, the more I realize—it’s not just about tech. It’s about how we, as humans, are learning to teach machines to think, adapt, and even create. That’s wild. It’s not just coding or algorithms—it’s psychology, logic, data, and imagination coming together. Lately, I’ve been thinking of making a project to dive deeper into AI stuff. If you’ve got any project ideas or stuff you’ve built with AI, drop them in the comments. I’d love to check them out and maybe we can collab! 👀&lt;/p&gt;

</description>
      <category>ai</category>
      <category>machinelearning</category>
      <category>deeplearning</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Personal Portfolio Website</title>
      <dc:creator>Aksh Thakkar</dc:creator>
      <pubDate>Sun, 25 May 2025 19:36:56 +0000</pubDate>
      <link>https://dev.to/akshthakkar/personal-portfolio-website-48jo</link>
      <guid>https://dev.to/akshthakkar/personal-portfolio-website-48jo</guid>
      <description>&lt;p&gt;Hey everyone!&lt;/p&gt;

&lt;p&gt;Just launched my personal portfolio site:&lt;br&gt;&lt;br&gt;
&lt;strong&gt;&lt;a href="https://akshhthakkar.github.io" rel="noopener noreferrer"&gt;https://akshhthakkar.github.io&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Built it using plain &lt;strong&gt;HTML, CSS, and JavaScript&lt;/strong&gt; — no frameworks, just from scratch.&lt;/p&gt;

&lt;p&gt;It's a simple space where I’ll be sharing my projects and idea.&lt;/p&gt;

&lt;p&gt;It's responsive, minimal, and still a work in progress.&lt;br&gt;&lt;br&gt;
Would love feedback or suggestions from the community!&lt;/p&gt;

&lt;p&gt;(People viewing this on my site ignore this 😅)&lt;/p&gt;

&lt;p&gt;Also,&lt;br&gt;
Thanks for checking it out!&lt;/p&gt;

</description>
      <category>portfolio</category>
      <category>webdev</category>
      <category>html</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Introduction</title>
      <dc:creator>Aksh Thakkar</dc:creator>
      <pubDate>Sun, 25 May 2025 10:59:28 +0000</pubDate>
      <link>https://dev.to/akshthakkar/introduction-4g88</link>
      <guid>https://dev.to/akshthakkar/introduction-4g88</guid>
      <description>&lt;p&gt;Hey Dev.to!&lt;/p&gt;

&lt;p&gt;I’m Aksh — currently a student and I'm still figuring out stuff in this whole programming/dev world 😅. Finally writing a post here and introduce myself.&lt;/p&gt;

&lt;p&gt;Right now, I’m learning C, C++, Java, and Python. Also getting into web dev — the basics like HTML, CSS, and JavaScript. It’s a lot sometimes, but I’m starting to enjoy the process.&lt;/p&gt;

&lt;p&gt;Recently started focusing more on DSA (Data Structures &amp;amp; Algorithms). It's challenging, but I’m trying to stay consistent and build up my problem-solving game.&lt;/p&gt;

&lt;p&gt;I’ve also been exploring full-stack dev — mostly looking at Django and how backend stuff works. Just taking it one step at a time.&lt;/p&gt;

&lt;p&gt;Why I'm here?&lt;br&gt;
No big reason, honestly. Just wanted a place to share things I learn stuff that finally makes sense after hours of confusion, small wins, maybe some rants too. Not trying to write perfect tutorials or anything like that. Just keeping track of my progress.&lt;/p&gt;

&lt;p&gt;That’s all for now.&lt;/p&gt;

&lt;p&gt;If you’re also like me figuring things out, learning new stuff and all— let’s connect.&lt;/p&gt;

&lt;p&gt;📌 &lt;strong&gt;GitHub&lt;/strong&gt;: &lt;a href="https://github.com/akshhthakkar" rel="noopener noreferrer"&gt;https://github.com/akshhthakkar&lt;/a&gt;&lt;br&gt;
📎 &lt;strong&gt;LinkedIn&lt;/strong&gt;: &lt;a href="https://www.linkedin.com/in/akshthakkar" rel="noopener noreferrer"&gt;https://www.linkedin.com/in/akshthakkar&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Till next post —&lt;br&gt;
Aksh&lt;/p&gt;

</description>
      <category>programming</category>
      <category>learning</category>
      <category>beginners</category>
      <category>datastructures</category>
    </item>
  </channel>
</rss>
