<?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: Divyang Bhadani</title>
    <description>The latest articles on DEV Community by Divyang Bhadani (@divyang_0835).</description>
    <link>https://dev.to/divyang_0835</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4128969%2F0de3a1bd-a458-4713-a181-94b6af434b17.jpg</url>
      <title>DEV Community: Divyang Bhadani</title>
      <link>https://dev.to/divyang_0835</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/divyang_0835"/>
    <language>en</language>
    <item>
      <title>How to Improve Website Performance as a Developer</title>
      <dc:creator>Divyang Bhadani</dc:creator>
      <pubDate>Tue, 29 Sep 2026 06:02:45 +0000</pubDate>
      <link>https://dev.to/divyang_0835/how-to-improve-website-performance-as-a-developer-i33</link>
      <guid>https://dev.to/divyang_0835/how-to-improve-website-performance-as-a-developer-i33</guid>
      <description>&lt;p&gt;A website can have great design and functionality, but if it loads slowly, users may leave before they even see what you've built.&lt;/p&gt;

&lt;p&gt;As developers, performance should be part of our development process—not something we think about only after users complain.&lt;/p&gt;

&lt;p&gt;In this article, let's look at some practical ways to improve website performance.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Optimize Images
Images are often one of the biggest contributors to page size.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Instead of uploading large JPEG or PNG files, consider modern formats like WebP or AVIF.&lt;/p&gt;

&lt;p&gt;Also, don't serve a 2000px image if it's displayed at 500px.&lt;/p&gt;

&lt;p&gt;&amp;lt;img&lt;br&gt;
  src="hero.webp"&lt;br&gt;
  width="800"&lt;br&gt;
  height="500"&lt;br&gt;
  loading="lazy"&lt;br&gt;
  alt="Website hero image"&lt;/p&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;

&lt;p&gt;For images below the fold, loading="lazy" can prevent them from being downloaded until they're needed.&lt;/p&gt;

&lt;p&gt;For responsive websites, use srcset to serve different image sizes to different devices.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Reduce JavaScript
JavaScript is powerful, but sending too much JavaScript to the browser can slow down both loading and interaction.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Ask yourself:&lt;/p&gt;

&lt;p&gt;Do I really need this library?&lt;/p&gt;

&lt;p&gt;Remove unused dependencies and JavaScript code whenever possible.&lt;/p&gt;

&lt;p&gt;For larger applications, use code splitting and dynamic imports:&lt;/p&gt;

&lt;p&gt;const loadDashboard = async () =&amp;gt; {&lt;br&gt;
  const dashboard = await import("./dashboard.js");&lt;/p&gt;

&lt;p&gt;dashboard.initialize();&lt;br&gt;
};&lt;/p&gt;

&lt;p&gt;Now the dashboard code can be loaded only when it's actually needed.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Optimize CSS
Large CSS files can also affect performance.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Try to:&lt;/p&gt;

&lt;p&gt;Remove unused CSS&lt;/p&gt;

&lt;p&gt;Minify production CSS&lt;/p&gt;

&lt;p&gt;Avoid unnecessary styles&lt;/p&gt;

&lt;p&gt;Load only the styles required by your application&lt;/p&gt;

&lt;p&gt;If you're using a CSS framework, make sure your production build isn't shipping a huge amount of unused styles.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Use Browser Caching
Why download the same CSS, JavaScript, or image every time a user visits your website?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Browser caching allows frequently used resources to be stored locally.&lt;/p&gt;

&lt;p&gt;For example, static assets can be cached with appropriate HTTP cache headers.&lt;/p&gt;

&lt;p&gt;Using versioned filenames such as:&lt;/p&gt;

&lt;p&gt;app.abc123.js&lt;/p&gt;

&lt;p&gt;also helps you safely cache assets for longer periods while still allowing new versions to be downloaded when the filename changes.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Optimize API Requests
Frontend performance isn't only about HTML, CSS, and JavaScript.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Slow APIs can make your entire application feel slow.&lt;/p&gt;

&lt;p&gt;Avoid fetching unnecessary data.&lt;/p&gt;

&lt;p&gt;Instead of:&lt;/p&gt;

&lt;p&gt;GET /api/products&lt;/p&gt;

&lt;p&gt;returning thousands of products, use pagination:&lt;/p&gt;

&lt;p&gt;GET /api/products?page=1&amp;amp;limit=20&lt;/p&gt;

&lt;p&gt;You can also improve API performance with:&lt;/p&gt;

&lt;p&gt;Caching&lt;/p&gt;

&lt;p&gt;Smaller response payloads&lt;/p&gt;

&lt;p&gt;Request batching&lt;/p&gt;

&lt;p&gt;Pagination&lt;/p&gt;

&lt;p&gt;Server-side filtering&lt;/p&gt;

&lt;p&gt;Send the browser only the data it actually needs.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Optimize Database Queries
A slow database query can become a slow website.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Avoid unnecessarily fetching everything:&lt;/p&gt;

&lt;p&gt;SELECT *&lt;br&gt;
FROM users;&lt;/p&gt;

&lt;p&gt;If you only need a few fields:&lt;/p&gt;

&lt;p&gt;SELECT id, name, email&lt;br&gt;
FROM users;&lt;/p&gt;

&lt;p&gt;Also look for:&lt;/p&gt;

&lt;p&gt;Missing indexes&lt;/p&gt;

&lt;p&gt;N+1 queries&lt;/p&gt;

&lt;p&gt;Unnecessary joins&lt;/p&gt;

&lt;p&gt;Repeated database queries&lt;/p&gt;

&lt;p&gt;Large result sets&lt;/p&gt;

&lt;p&gt;Use your database's query-analysis tools to find actual bottlenecks instead of guessing.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Use a CDN
A CDN can serve static resources from servers geographically closer to your users.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Instead of:&lt;/p&gt;

&lt;p&gt;User → Origin Server&lt;/p&gt;

&lt;p&gt;you can have:&lt;/p&gt;

&lt;p&gt;User → CDN → Origin Server&lt;/p&gt;

&lt;p&gt;CDNs are particularly useful for:&lt;/p&gt;

&lt;p&gt;Images&lt;/p&gt;

&lt;p&gt;JavaScript&lt;/p&gt;

&lt;p&gt;CSS&lt;/p&gt;

&lt;p&gt;Fonts&lt;/p&gt;

&lt;p&gt;Other static assets&lt;/p&gt;

&lt;p&gt;This can reduce latency, especially for users who are far away from your main server.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Watch Your Core Web Vitals
Don't measure performance only by asking, "How many seconds does my website take to load?"&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Also pay attention to Core Web Vitals, including:&lt;/p&gt;

&lt;p&gt;LCP — Largest Contentful Paint&lt;br&gt;
How quickly the main content becomes visible.&lt;/p&gt;

&lt;p&gt;INP — Interaction to Next Paint&lt;br&gt;
How responsive the page is when users interact with it.&lt;/p&gt;

&lt;p&gt;CLS — Cumulative Layout Shift&lt;br&gt;
How much the page unexpectedly moves while loading.&lt;/p&gt;

&lt;p&gt;For example, always provide dimensions for images:&lt;/p&gt;

&lt;p&gt;&amp;lt;img&lt;br&gt;
  src="product.webp"&lt;br&gt;
  width="600"&lt;br&gt;
  height="400"&lt;br&gt;
  alt="Product"&lt;/p&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;

&lt;p&gt;This helps the browser reserve space before the image loads.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Don't Forget Third-Party Scripts
Analytics, chat widgets, advertisements, social media embeds, and tracking scripts can all affect performance.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Before adding a third-party script, ask:&lt;/p&gt;

&lt;p&gt;Is the functionality worth the performance cost?&lt;/p&gt;

&lt;p&gt;Load non-critical scripts as late as practical and regularly check how much time they add to your page.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Measure Before You Optimize
One of the biggest mistakes developers make is optimizing based on assumptions.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Don't just think:&lt;/p&gt;

&lt;p&gt;"This code looks slow."&lt;/p&gt;

&lt;p&gt;Measure it.&lt;/p&gt;

&lt;p&gt;Useful tools include:&lt;/p&gt;

&lt;p&gt;Chrome DevTools&lt;/p&gt;

&lt;p&gt;Lighthouse&lt;/p&gt;

&lt;p&gt;PageSpeed Insights&lt;/p&gt;

&lt;p&gt;Network panel&lt;/p&gt;

&lt;p&gt;Performance panel&lt;/p&gt;

&lt;p&gt;JavaScript profilers&lt;/p&gt;

&lt;p&gt;Check your performance before making a change and then measure again afterward.&lt;/p&gt;

&lt;p&gt;A Simple Performance Checklist&lt;br&gt;
Before deploying your website, check:&lt;/p&gt;

&lt;p&gt;✅ Optimize images&lt;/p&gt;

&lt;p&gt;✅ Remove unused JavaScript and CSS&lt;/p&gt;

&lt;p&gt;✅ Lazy load non-critical resources&lt;/p&gt;

&lt;p&gt;✅ Minimize API payloads&lt;/p&gt;

&lt;p&gt;✅ Optimize database queries&lt;/p&gt;

&lt;p&gt;✅ Enable browser caching&lt;/p&gt;

&lt;p&gt;✅ Consider using a CDN&lt;/p&gt;

&lt;p&gt;✅ Compress responses&lt;/p&gt;

&lt;p&gt;✅ Monitor Core Web Vitals&lt;/p&gt;

&lt;p&gt;✅ Test on mobile and slower networks&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;br&gt;
Website performance isn't about making everything as small as possible.&lt;/p&gt;

&lt;p&gt;It's about delivering the right resources at the right time.&lt;/p&gt;

&lt;p&gt;Start by measuring your application, identify the biggest bottlenecks, make one improvement at a time, and measure again.&lt;/p&gt;

</description>
      <category>frontend</category>
      <category>performance</category>
      <category>softwaredevelopment</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How to Choose the Right Shopify Theme for Your E-commerce Store</title>
      <dc:creator>Divyang Bhadani</dc:creator>
      <pubDate>Wed, 23 Sep 2026 12:16:34 +0000</pubDate>
      <link>https://dev.to/divyang_0835/how-to-choose-the-right-shopify-theme-for-your-e-commerce-store-3h65</link>
      <guid>https://dev.to/divyang_0835/how-to-choose-the-right-shopify-theme-for-your-e-commerce-store-3h65</guid>
      <description>&lt;p&gt;Choosing a Shopify theme isn't only about finding a design that looks good.&lt;/p&gt;

&lt;p&gt;Your theme can affect performance, mobile experience, customization, and conversions.&lt;/p&gt;

&lt;p&gt;Here are the main things to check before choosing one.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Check Performance&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A beautiful theme isn't useful if it makes your store slow.&lt;/p&gt;

&lt;p&gt;Look for:&lt;/p&gt;

&lt;p&gt;Fast-loading pages&lt;br&gt;
Optimized images&lt;br&gt;
Lightweight code&lt;br&gt;
Minimal unnecessary scripts&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Think Mobile-First&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Your theme should work smoothly on phones and tablets.&lt;/p&gt;

&lt;p&gt;Check:&lt;/p&gt;

&lt;p&gt;Navigation&lt;br&gt;
Product pages&lt;br&gt;
Buttons&lt;br&gt;
Filters&lt;br&gt;
Cart experience&lt;/p&gt;

&lt;p&gt;Don't judge a theme only from its desktop preview.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Look for Customization&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A good theme should let you customize the store without editing code for every small change.&lt;/p&gt;

&lt;p&gt;Useful options include:&lt;/p&gt;

&lt;p&gt;Drag-and-drop sections&lt;br&gt;
Custom blocks&lt;br&gt;
Flexible product layouts&lt;br&gt;
Collection sections&lt;br&gt;
Promotional banners&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Consider E-commerce Features&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Don't choose a theme based only on appearance.&lt;/p&gt;

&lt;p&gt;Look for features that improve the shopping experience:&lt;/p&gt;

&lt;p&gt;Sticky Add to Cart&lt;br&gt;
Product filters&lt;br&gt;
Quick product discovery&lt;br&gt;
Cart drawer&lt;br&gt;
Upsells&lt;br&gt;
Product recommendations&lt;/p&gt;

&lt;p&gt;For example, tools like Shoptimity provide reusable Shopify sections and widgets that can add these types of functionality without building everything from scratch.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Keep Future Growth in Mind&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Your store may start with 20 products and eventually have hundreds.&lt;/p&gt;

&lt;p&gt;Choose a theme that can handle:&lt;/p&gt;

&lt;p&gt;More products → More collections → More customers&lt;/p&gt;

&lt;p&gt;without requiring a complete redesign.&lt;/p&gt;

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

&lt;p&gt;The right Shopify theme should balance design, performance, flexibility, and user experience.&lt;/p&gt;

&lt;p&gt;Don't ask only:&lt;/p&gt;

&lt;p&gt;“Does this theme look good?”&lt;/p&gt;

&lt;p&gt;Also ask:&lt;/p&gt;

&lt;p&gt;“Will this theme help me build a better store?”&lt;/p&gt;

</description>
      <category>design</category>
      <category>mobile</category>
      <category>performance</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How to Build a High-Converting Shopify Store Without Writing Tons of Custom Code</title>
      <dc:creator>Divyang Bhadani</dc:creator>
      <pubDate>Tue, 22 Sep 2026 11:45:01 +0000</pubDate>
      <link>https://dev.to/divyang_0835/how-to-build-a-high-converting-shopify-store-without-writing-tons-of-custom-code-2117</link>
      <guid>https://dev.to/divyang_0835/how-to-build-a-high-converting-shopify-store-without-writing-tons-of-custom-code-2117</guid>
      <description>&lt;p&gt;Building a Shopify store doesn't always mean writing hundreds of lines of Liquid, JavaScript, and CSS.&lt;/p&gt;

&lt;p&gt;The goal is to create a store that is fast, mobile-friendly, easy to use, and focused on conversions.&lt;/p&gt;

&lt;p&gt;Here are a few practical ways to do it.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Start With a Flexible Theme&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Choose a theme with reusable sections and customization options.&lt;/p&gt;

&lt;p&gt;This lets you create:&lt;/p&gt;

&lt;p&gt;Custom homepage sections&lt;br&gt;
Product layouts&lt;br&gt;
Promotional banners&lt;br&gt;
Collection sections&lt;br&gt;
FAQs and testimonials&lt;/p&gt;

&lt;p&gt;You can make changes from the Shopify editor instead of editing code every time.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Focus on Mobile&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Most shoppers use mobile devices, so keep the experience simple.&lt;/p&gt;

&lt;p&gt;Consider features like:&lt;/p&gt;

&lt;p&gt;Sticky Add to Cart&lt;br&gt;
Easy navigation&lt;br&gt;
Mobile-friendly filters&lt;br&gt;
Fast-loading images&lt;br&gt;
Clear CTAs&lt;/p&gt;

&lt;p&gt;Small UX improvements can make a big difference.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Make Products Easy to Find&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For stores with many products, good product discovery is important.&lt;/p&gt;

&lt;p&gt;Useful features include:&lt;/p&gt;

&lt;p&gt;Search&lt;br&gt;
Filters&lt;br&gt;
Sorting&lt;br&gt;
Related products&lt;br&gt;
Product recommendations&lt;/p&gt;

&lt;p&gt;Customers should be able to find what they want without unnecessary clicks.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Simplify the Cart Experience&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A cart drawer can let customers review their products without leaving the current page.&lt;/p&gt;

&lt;p&gt;Useful cart features include:&lt;/p&gt;

&lt;p&gt;Quantity controls&lt;br&gt;
Remove options&lt;br&gt;
Upsells&lt;br&gt;
Clear checkout CTA&lt;/p&gt;

&lt;p&gt;Keep the journey simple:&lt;/p&gt;

&lt;p&gt;Product → Cart → Checkout&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Don't Build Everything From Scratch&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Before writing custom code, check whether the functionality can be handled by Shopify, your theme, or an existing tool.&lt;/p&gt;

&lt;p&gt;For example, Shoptimity provides reusable Shopify sections and widgets for features such as sticky Add to Cart, filters, cart timers, and upsells.&lt;/p&gt;

&lt;p&gt;This can reduce repetitive development work while still giving merchants customization options.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Keep Performance in Mind&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;More features don't always mean a better store.&lt;/p&gt;

&lt;p&gt;Always watch:&lt;/p&gt;

&lt;p&gt;Image sizes&lt;br&gt;
JavaScript&lt;br&gt;
Third-party apps&lt;br&gt;
Animations&lt;br&gt;
Page loading time&lt;/p&gt;

&lt;p&gt;Only add features that actually improve the shopping experience.&lt;/p&gt;

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

&lt;p&gt;You don't need a huge amount of custom code to build a good Shopify store.&lt;/p&gt;

&lt;p&gt;Use reusable components + Shopify's native features + targeted custom code.&lt;/p&gt;

&lt;p&gt;The goal isn't to write more code.&lt;/p&gt;

&lt;p&gt;It's to write the right code.&lt;/p&gt;

</description>
      <category>design</category>
      <category>mobile</category>
      <category>ux</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
