<?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>Forem: Rakibur Rahaman</title>
    <description>The latest articles on Forem by Rakibur Rahaman (@rakib86).</description>
    <link>https://forem.com/rakib86</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%2F3810847%2F206f0431-3ab5-45d5-8e6c-edfd8015388f.png</url>
      <title>Forem: Rakibur Rahaman</title>
      <link>https://forem.com/rakib86</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/rakib86"/>
    <language>en</language>
    <item>
      <title>how to add Progressive Blur Effects in React / Next.js with react-progressive-blur</title>
      <dc:creator>Rakibur Rahaman</dc:creator>
      <pubDate>Sat, 07 Mar 2026 03:05:57 +0000</pubDate>
      <link>https://forem.com/rakib86/how-to-add-progressive-blur-effects-in-react-nextjs-with-react-progressive-blur-56ge</link>
      <guid>https://forem.com/rakib86/how-to-add-progressive-blur-effects-in-react-nextjs-with-react-progressive-blur-56ge</guid>
      <description>&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%2Frez7y06rxmzac0wxjmiq.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%2Frez7y06rxmzac0wxjmiq.png" alt="Preview Demo 1" width="800" height="558"&gt;&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%2Fklq1ay0wunn9uvu4vwcb.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%2Fklq1ay0wunn9uvu4vwcb.png" alt="Preview Demo 2" width="800" height="558"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Installation:
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;npm install react-progressive-blur&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  or
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;yarn add react-progressive-blur&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  or
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;bun add react-progressive-blur&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;When building modern web apps, subtle UI enhancements like smooth blur overlays can make your design feel polished and professional. Whether you're creating video players, image overlays, or elegant UI panels, blur effects can elevate the experience. But adding these effects progressively - with smooth transitions between intensities - can be tricky.&lt;br&gt;
That's why I built react-progressive-blur: a lightweight React component for progressive blur layers, with built-in TypeScript support!&lt;br&gt;
In this post, I'll show you how to install it, set it up in React / Next.js (with TypeScript), and customize it for your app.&lt;/p&gt;




&lt;p&gt;🚀 What is react-progressive-blur?&lt;br&gt;
react-progressive-blur lets you add multi-layered blur effects with smooth transitions. It's perfect for:&lt;br&gt;
✅ Modern UI overlays&lt;br&gt;
✅ Video controls&lt;br&gt;
✅ Aesthetic blur gradients&lt;br&gt;
✅ Tailwind CSS compatible layouts&lt;br&gt;
✨ Features:&lt;br&gt;
Progressive blur layers (light → medium → heavy)&lt;br&gt;
Position on any edge (top, bottom, left, right)&lt;br&gt;
Customizable intensity&lt;br&gt;
Tiny size, no extra dependencies&lt;br&gt;
TypeScript types built-in&lt;/p&gt;







&lt;p&gt;📝 Basic Usage&lt;br&gt;
Here's a simple example of adding a top blur to an image:&lt;br&gt;
&lt;code&gt;import React from "react";&lt;br&gt;
import BlurEffect from "react-progressive-blur";&lt;br&gt;
export default function MyComponent() {&lt;br&gt;
  return (&lt;br&gt;
    &amp;lt;div className="relative"&amp;gt;&lt;br&gt;
      &amp;lt;img src="/your-image.jpg" alt="Background" className="w-full/&amp;gt;&lt;br&gt;
      &amp;lt;BlurEffect position="top" intensity={50} /&amp;gt;&lt;br&gt;
    &amp;lt;/div&amp;gt;&lt;br&gt;
  );&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;




&lt;p&gt;⚙️ Props&lt;br&gt;
Prop Type Default Description className string '' Extra CSS classes intensity number 50 Blur intensity (higher = stronger blur) position `'top' 'bottom' 'left'&lt;/p&gt;




&lt;p&gt;💡 Styling Tips&lt;br&gt;
Combine with Tailwind gradients:&lt;br&gt;
&lt;code&gt;&amp;lt;BlurEffect&lt;br&gt;
  className="bg-gradient-to-b from-black/30 to-transparent"&lt;br&gt;
  position="top"&lt;br&gt;
  intensity={75}&lt;br&gt;
/&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Adjust height/width:&lt;br&gt;
&lt;code&gt;&amp;lt;BlurEffect className="h-40" position="top" intensity={100} /&amp;gt;&lt;br&gt;
&amp;lt;BlurEffect className="w-32" position="left" intensity={100} /&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Use multiple blurs:&lt;br&gt;
&lt;code&gt;&amp;lt;div className="relative"&amp;gt;&lt;br&gt;
  &amp;lt;img src="/background.jpg" alt="Background" /&amp;gt;&lt;br&gt;
  &amp;lt;BlurEffect position="top" intensity={80} className="h-24" /&amp;gt;&lt;br&gt;
  &amp;lt;BlurEffect position="bottom" intensity={120} className="h-32" /&amp;gt;&lt;br&gt;
  &amp;lt;BlurEffect position="left" intensity={60} className="w-16" /&amp;gt;&lt;br&gt;
&amp;lt;/div&amp;gt;&lt;/code&gt;&lt;/p&gt;




&lt;p&gt;🧠 How it works&lt;br&gt;
react-progressive-blur creates three layers with increasing blur:&lt;br&gt;
Light blur (1× intensity) → 0–25% of the edge&lt;br&gt;
Medium blur (3× intensity) → 25–75%&lt;br&gt;
Heavy blur (6× intensity) → 75–100%&lt;/p&gt;

&lt;p&gt;It uses CSS mask-image + backdrop-filter to smoothly transition between layers. Fully compatible with modern browsers.&lt;/p&gt;




&lt;p&gt;🌐 Browser Support&lt;br&gt;
✅ backdrop-filter + -webkit-backdrop-filter&lt;br&gt;
✅ mask-image + -webkit-mask-image&lt;br&gt;
👉 Works in all modern browsers. For older browsers, consider polyfills.&lt;/p&gt;




&lt;p&gt;🤝 Contribute&lt;br&gt;
Feel free to open issues or submit PRs! Let's make it better together.&lt;/p&gt;




&lt;p&gt;📎 Links&lt;br&gt;
&lt;a href="https://www.npmjs.com/package/react-progressive-blur" rel="noopener noreferrer"&gt;NPM Package&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/rakib86/react-progressive-blur" rel="noopener noreferrer"&gt;GitHub Repo&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Final Thoughts&lt;br&gt;
If you want a no-hassle, clean solution for progressive blur in your React or Next.js app, give react-progressive-blur a try. It's minimal, flexible, and designed for modern UIs!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>nextjs</category>
      <category>frontend</category>
    </item>
  </channel>
</rss>
