<?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: Pooya Goodarzi</title>
    <description>The latest articles on DEV Community by Pooya Goodarzi (@pooya_goodarzi_93d9398f01).</description>
    <link>https://dev.to/pooya_goodarzi_93d9398f01</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%2F3536515%2Fc73b29f9-8f3e-4fa1-9091-d54020500565.png</url>
      <title>DEV Community: Pooya Goodarzi</title>
      <link>https://dev.to/pooya_goodarzi_93d9398f01</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/pooya_goodarzi_93d9398f01"/>
    <language>en</language>
    <item>
      <title>How To Do Page Transitions In Vue.js</title>
      <dc:creator>Pooya Goodarzi</dc:creator>
      <pubDate>Sun, 19 Oct 2025 07:48:35 +0000</pubDate>
      <link>https://dev.to/pooya_goodarzi_93d9398f01/how-to-do-page-transitions-in-vuejs-4nce</link>
      <guid>https://dev.to/pooya_goodarzi_93d9398f01/how-to-do-page-transitions-in-vuejs-4nce</guid>
      <description>&lt;p&gt;Hi there my fellow programmers.&lt;br&gt;
Today we are here to see how we can have smooth page &lt;strong&gt;transitions&lt;/strong&gt; in our SPA &lt;strong&gt;Vue.js&lt;/strong&gt; app .&lt;br&gt;
At first it may seem it's a huge deal and a lot of work to do . Well I'm here to tell you it's &lt;strong&gt;not&lt;/strong&gt;&lt;br&gt;
In fact it's really easy to have custom transitions while you are using &lt;code&gt;vue-router&lt;/code&gt;to change routes in your app.&lt;/p&gt;



&lt;p&gt;There are several ways to apply transitions to routes but I'm gonna keep it short and tell the easiest way of all.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What tools do we need to add page transitions?&lt;/strong&gt;&lt;br&gt;
On top of your &lt;code&gt;vue&lt;/code&gt;and &lt;code&gt;vue-router&lt;/code&gt; you are going to need a small animation library designed for vue called &lt;code&gt;vue-transify&lt;/code&gt;.&lt;br&gt;
Note : This library support vue3 not vue 2.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Installation&lt;/strong&gt; &lt;br&gt;
Install the library via npm&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install vue-transify
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Add the css styles to your &lt;code&gt;main.js&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { createApp } from 'vue'
import App from './App.vue'
import "vue-transify/dist/vue-transify.css";

createApp(App).mount('#app')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you just need to use the helper that transify provides instead of &lt;code&gt;vue-router&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;template&amp;gt;
  &amp;lt;!--This component replaces the &amp;lt;router-view&amp;gt; in your app  --&amp;gt;
  &amp;lt;PageTransitionHelper mode="out-in" :duration="1000" /&amp;gt;
&amp;lt;/template&amp;gt;
&amp;lt;script setup&amp;gt;
//You need to import the animation you want to use in the app
import { PageTransitionHelper } from "vue-transify";
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now that we have our library completely setup we can tell the app what transitions to use in router &lt;code&gt;index.js&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { createRouter, createWebHistory } from 'vue-router'
import HomeView from '@/views/HomeView.vue'
import AboutView from '@/views/AboutView.vue'

const routes = [
  {
    path: '/',
    component: HomeView,
    meta: { transition: 'fade' }
  },
  {
    path: '/about',
    component: AboutView,
    meta: { transition: 'slideInUp' }
  }
]

export default createRouter({
  history: createWebHistory(),
  routes
})

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

&lt;/div&gt;



&lt;p&gt;That's it . Vue-Transify will automatically read the meta add the transition to your pages.&lt;/p&gt;

&lt;p&gt;If you want to know more about the library feel free to read the docs in &lt;a href="https://github.com/Redskullvue/vue-transify" rel="noopener noreferrer"&gt;github&lt;/a&gt;.&lt;br&gt;
You can also check out the demo &lt;a href="https://vue-transify.netlify.app" rel="noopener noreferrer"&gt;website&lt;/a&gt; to see the transitions in action&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>vue</category>
    </item>
    <item>
      <title>Page Transition Animations With Vue-Transify 1.2.0</title>
      <dc:creator>Pooya Goodarzi</dc:creator>
      <pubDate>Wed, 15 Oct 2025 08:14:29 +0000</pubDate>
      <link>https://dev.to/pooya_goodarzi_93d9398f01/page-transition-animations-with-vue-transify-120-2nin</link>
      <guid>https://dev.to/pooya_goodarzi_93d9398f01/page-transition-animations-with-vue-transify-120-2nin</guid>
      <description>&lt;p&gt;Vue-Transify just got a major &lt;strong&gt;upgrade&lt;/strong&gt;!&lt;br&gt;
With version 1.2.0, we’re introducing Page Transition Animations — a simple, elegant way to animate your route changes in Vue 3 using &lt;code&gt;vue-router&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Version 1.2.0 brings route-based animations through a built in component &lt;code&gt;&amp;lt;PageTranstionHelper/&amp;gt;&lt;/code&gt;&lt;br&gt;
It's built on top of vue-router and lets you animate between pages with a single tag and no extra setup or config.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;template&amp;gt;
  &amp;lt;PageTransitionHelper mode="out-in" :duration="1000" /&amp;gt;
&amp;lt;/template&amp;gt;
&amp;lt;script setup&amp;gt;
import { PageTransitionHelper } from "vue-transify";
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You just place this line instead of &lt;code&gt;&amp;lt;router-view/&amp;gt;&lt;/code&gt; and you got yourself transitions for every page. Stay and I show you what is under the hood.&lt;br&gt;
So basically the only thing you need to change in your project is to replace the &lt;code&gt;&amp;lt;router-view&amp;gt;&lt;/code&gt; with &lt;code&gt;&amp;lt;PageTransitionHelper/&amp;gt;&lt;/code&gt;&lt;br&gt;
Note : You need to import the animation you want to use in your &lt;code&gt;App.vue&lt;/code&gt; otherwise the library will not find any animations to work with.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;⚙️ Route-based Custom Animations&lt;/strong&gt;&lt;br&gt;
First let's see how you can select the animation you want for each route.&lt;br&gt;
This is your router &lt;code&gt;index.js&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { createRouter, createWebHistory } from 'vue-router'
import HomeView from '@/views/HomeView.vue'
import AboutView from '@/views/AboutView.vue'

const routes = [
  {
    path: '/',
    component: HomeView,
    meta: { transition: 'fade' }
  },
  {
    path: '/about',
    component: AboutView,
    meta: { transition: 'slideInUp' }
  }
]

export default createRouter({
  history: createWebHistory(),
  routes
})

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

&lt;/div&gt;



&lt;p&gt;So you can add animations to each route using the meta fields and the transition will automatically be added to your router-view. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🧩 Dependency&lt;/strong&gt; &lt;br&gt;
Page transitions use vue-router for their logic but if you don't want them in your project it's totally up to you as the vue-router package is an optional dependency in &lt;strong&gt;Vue-Transify&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🧠 Update in a nutshell&lt;/strong&gt; &lt;br&gt;
With Vue-Transify 1.2.0, you can now:&lt;/p&gt;

&lt;p&gt;Animate route changes cleanly, without boilerplate.&lt;/p&gt;

&lt;p&gt;Reuse the same library for component and page transitions.&lt;/p&gt;

&lt;p&gt;Keep your code semantic and minimal.&lt;/p&gt;

&lt;p&gt;And to see the transitions in action be sure to visit the &lt;a href="https://vue-transify.netlify.app/" rel="noopener noreferrer"&gt;Demo Website&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🚀 Quick Start&lt;/strong&gt;&lt;br&gt;
For a quick start please checkout the documentation in &lt;a href="https://github.com/Redskullvue/vue-transify" rel="noopener noreferrer"&gt;github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✨ Final Thoughts&lt;/strong&gt;&lt;br&gt;
Vue-Transify started as a simple idea — making transitions elegant and effortless for Vue developers.&lt;br&gt;
With this new release, it’s evolving into a complete animation toolkit for Vue 3.&lt;/p&gt;

&lt;p&gt;If you like the project, your support could mean a lot&lt;br&gt;
⭐ star it on GitHub and help it grow → &lt;a href="//github.com/Redskullvue/vue-transify"&gt;repo&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>vue</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Page Transition Animations With Vue-Transify 1.2.0</title>
      <dc:creator>Pooya Goodarzi</dc:creator>
      <pubDate>Wed, 15 Oct 2025 08:07:35 +0000</pubDate>
      <link>https://dev.to/pooya_goodarzi_93d9398f01/page-transition-animations-with-vue-transify-120-21e2</link>
      <guid>https://dev.to/pooya_goodarzi_93d9398f01/page-transition-animations-with-vue-transify-120-21e2</guid>
      <description>&lt;p&gt;Vue-Transify just got a major &lt;strong&gt;upgrade&lt;/strong&gt;!&lt;br&gt;
With version 1.2.0, we’re introducing Page Transition Animations — a simple, elegant way to animate your route changes in Vue 3 using &lt;code&gt;vue-router&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Version 1.2.0 brings route-based animations through a built in component &lt;code&gt;&amp;lt;PageTranstionHelper/&amp;gt;&lt;/code&gt;&lt;br&gt;
It's built on top of vue-router and lets you animate between pages with a single tag and no extra setup or config.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;template&amp;gt;
  &amp;lt;PageTransitionHelper mode="out-in" :duration="1000" /&amp;gt;
&amp;lt;/template&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You just place this line instead of &lt;code&gt;&amp;lt;router-view/&amp;gt;&lt;/code&gt; and you got yourself transitions for every page. Stay and I show you what is under the hood. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;⚙️ Route-based Custom Animations&lt;/strong&gt;&lt;br&gt;
First let's see how you can select the animation you want for each route.&lt;br&gt;
This is your router &lt;code&gt;index.js&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { createRouter, createWebHistory } from 'vue-router'
import HomeView from '@/views/HomeView.vue'
import AboutView from '@/views/AboutView.vue'

const routes = [
  {
    path: '/',
    component: HomeView,
    meta: { transition: 'fade' }
  },
  {
    path: '/about',
    component: AboutView,
    meta: { transition: 'slideInUp' }
  }
]

export default createRouter({
  history: createWebHistory(),
  routes
})

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

&lt;/div&gt;



&lt;p&gt;So you can add animations to each route using the meta fields and the transition will automatically be added to your router-view. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🧩 Dependency&lt;/strong&gt; &lt;br&gt;
Page transitions use vue-router for their logic but if you don't want them in your project it's totally up to you as the vue-router package is an optional dependency in &lt;strong&gt;Vue-Transify&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🧠 Update in a nutshell&lt;/strong&gt; &lt;br&gt;
With Vue-Transify 1.2.0, you can now:&lt;/p&gt;

&lt;p&gt;Animate route changes cleanly, without boilerplate.&lt;/p&gt;

&lt;p&gt;Reuse the same library for component and page transitions.&lt;/p&gt;

&lt;p&gt;Keep your code semantic and minimal.&lt;/p&gt;

&lt;p&gt;And to see the transitions in action be sure to visit the &lt;a href="https://vue-transify.netlify.app/" rel="noopener noreferrer"&gt;Demo Website&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🚀 Quick Start&lt;/strong&gt;&lt;br&gt;
For a quick start please checkout the documentation in &lt;a href="https://github.com/Redskullvue/vue-transify" rel="noopener noreferrer"&gt;github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✨ Final Thoughts&lt;/strong&gt;&lt;br&gt;
Vue-Transify started as a simple idea — making transitions elegant and effortless for Vue developers.&lt;br&gt;
With this new release, it’s evolving into a complete animation toolkit for Vue 3.&lt;/p&gt;

&lt;p&gt;If you like the project, your support could mean a lot&lt;br&gt;
⭐ star it on GitHub and help it grow → &lt;a href="//github.com/Redskullvue/vue-transify"&gt;repo&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>vue</category>
    </item>
    <item>
      <title>Introducing Vue-Transify - The New And Simple Way To Animate Vue Components</title>
      <dc:creator>Pooya Goodarzi</dc:creator>
      <pubDate>Sun, 05 Oct 2025 06:13:26 +0000</pubDate>
      <link>https://dev.to/pooya_goodarzi_93d9398f01/introducing-vue-transify-the-new-and-simple-way-to-animate-vue-components-19hc</link>
      <guid>https://dev.to/pooya_goodarzi_93d9398f01/introducing-vue-transify-the-new-and-simple-way-to-animate-vue-components-19hc</guid>
      <description>&lt;p&gt;I created &lt;a href="https://www.npmjs.com/package/vue-transify" rel="noopener noreferrer"&gt;Vue-Transify&lt;/a&gt; in order to remove the repetitive transition code from my CSS and my components.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Is Vue-Transify ?
&lt;/h2&gt;

&lt;p&gt;vue-transify is a collection of pre-built , customizable transition components built on top of Vue's &lt;code&gt;&amp;lt;Transition&amp;gt;&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Each animation comes ready to use . all you need is one component tag.&lt;br&gt;
No keyframes No extra CSS !&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;Fade :duration="600" :appear="true"&amp;gt;
  &amp;lt;p&amp;gt;Hello Vue-Transify 🎉&amp;lt;/p&amp;gt;
&amp;lt;/Fade&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And Boom ! &lt;br&gt;
That's it ! The animation is handled automatically with smart defaults and you can control it all via props &lt;/p&gt;
&lt;h2&gt;
  
  
  ⚙️ Installation
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Install the package via npm
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install &lt;/span&gt;vue-transify
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;2.Add the css to your main.js&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { createApp } from 'vue'
import App from './App.vue'
import "vue-transify/dist/vue-transify.css";

createApp(App).mount('#app')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;3.Import any animation you want in your components&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;template&amp;gt;
  &amp;lt;div style="padding: 2rem"&amp;gt;
    &amp;lt;button @click="show = !show"&amp;gt;Toggle Fade&amp;lt;/button&amp;gt;
    &amp;lt;!-- Use the component --&amp;gt;
    &amp;lt;Fade :duration="600" :appear="true"&amp;gt;
      &amp;lt;p v-if="show"&amp;gt;✨ Hello World from Fade Animation !&amp;lt;/p&amp;gt;
    &amp;lt;/Fade&amp;gt;
    &amp;lt;!-- Use these props to change the behavior of your animation --&amp;gt;
  &amp;lt;/div&amp;gt;
&amp;lt;/template&amp;gt;

&amp;lt;script setup&amp;gt;
import { ref } from 'vue'
// Import the component
import { Fade } from "vue-transify";
const show = ref(true)
&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And done ! Now You have some customizable, light animations in a sec.&lt;/p&gt;

&lt;h2&gt;
  
  
  💡 Why I Built It ?
&lt;/h2&gt;

&lt;p&gt;When I was experimenting with transitions in vue , I kept repeating my self over and over in the CSS and keyframe patterns.&lt;br&gt;
So I thought if vue is providing everything why not let the library handle the boilerplate ? &lt;/p&gt;
&lt;h2&gt;
  
  
  How It Works
&lt;/h2&gt;

&lt;p&gt;Each animation component is built on top of Vue's &lt;code&gt;&amp;lt;Transition&amp;gt;&lt;/code&gt;Element.&lt;br&gt;
Internally all components share a few CSS variables to define timing, easing and delay&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;:root {
  --animation-duration: 500ms;
  --animation-easing: ease;
  --animation-delay: 0ms;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then in each transition class they are applied dynamically by the props you provide&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.fade-enter-active,
.fade-leave-active {
  transition: opacity var(--animation-duration) var(--animation-easing)
    var(--animation-delay);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Props to use
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Prop&lt;/th&gt;
&lt;th&gt;Type&lt;/th&gt;
&lt;th&gt;Default&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;appear&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Boolean&lt;/td&gt;
&lt;td&gt;&lt;code&gt;false&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Run animation on mount&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;duration&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Number&lt;/td&gt;
&lt;td&gt;&lt;code&gt;500&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Duration in ms&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;easing&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;String&lt;/td&gt;
&lt;td&gt;&lt;code&gt;'ease'&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Transition easing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;delay&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Number&lt;/td&gt;
&lt;td&gt;&lt;code&gt;0&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Delay before starting&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;All animation components are using these set of props&lt;/p&gt;

&lt;h2&gt;
  
  
  Where to see all animations ?
&lt;/h2&gt;

&lt;p&gt;For checking out and trying animations you can visit the &lt;a href="https://vue-transify.netlify.app/" rel="noopener noreferrer"&gt;website&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For now you can visit my github page in order to see the animations list &lt;br&gt;
&lt;a href="https://github.com/Redskullvue/vue-transify" rel="noopener noreferrer"&gt;Github&lt;/a&gt;;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>vue</category>
      <category>programming</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Ezlazy: A Lightweight Lazy Loading Library for Images &amp; Backgrounds</title>
      <dc:creator>Pooya Goodarzi</dc:creator>
      <pubDate>Mon, 29 Sep 2025 07:12:09 +0000</pubDate>
      <link>https://dev.to/pooya_goodarzi_93d9398f01/ezlazy-a-lightweight-lazy-loading-library-for-images-backgrounds-op5</link>
      <guid>https://dev.to/pooya_goodarzi_93d9398f01/ezlazy-a-lightweight-lazy-loading-library-for-images-backgrounds-op5</guid>
      <description>&lt;p&gt;Have you ever opened a webpage and tried to load 100 images at once ? yea, right not fun ! That is why I decided to create &lt;code&gt;ezlazy&lt;/code&gt;.&lt;br&gt;
It's minimal attribute based library to lazy-load images on infinite scroll using the Intersection Observer.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;What it does ? *&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;It's attribute based so you just need to work it in HTML and won't be needing any js.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Automatically uses the Intersection Observer if available in browsers, fallback otherwise&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tiny footprint and dependency free&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Quick Start&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Just add the CDN and you are ready to go !&lt;br&gt;
Note : You can also install the package using &lt;code&gt;npm i ezlazy&lt;/code&gt;&lt;br&gt;
(after installing be sure to import it in your main js file &lt;code&gt;import 'ezlazy';&lt;/code&gt;)&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;img data-ezlazy="my-photo.jpg" alt="Lazy photo"&amp;gt;

&amp;lt;script src="https://unpkg.com/ezlazy@latest/dist/ezlazy.min.js"&amp;gt;&amp;lt;/script&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That's it and the image will be loading when close to entering viewport.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Links&lt;/strong&gt;&lt;br&gt;
🔗 GitHub: [&lt;a href="https://github.com/Redskullvue/ezlazy" rel="noopener noreferrer"&gt;https://github.com/Redskullvue/ezlazy&lt;/a&gt;]&lt;br&gt;
📦 NPM: [&lt;a href="https://www.npmjs.com/package/ezlazy?activeTab=readme" rel="noopener noreferrer"&gt;https://www.npmjs.com/package/ezlazy?activeTab=readme&lt;/a&gt;]&lt;/p&gt;




&lt;p&gt;Give it a try in your next project and let me know your feedback. Contributions and stars are always welcome ⭐️.&lt;/p&gt;

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