npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

react-native-modern-blur-view

v1.1.1

Published

A modern lightweight, Fabric-ready BlurView for React Native with customizable blur radius, tint color, and opacity on iOS and Android.

Readme

react-native-modern-blur-view

A lightweight, Fabric/New Architecture BlurView for React Native that blurs whatever is behind it — with precise control over blur radius, tint color, and tint opacity. Works on iOS & Android (Fabric/New Architecture).

✨ Includes a demo app with a draggable blur square and adjustable controls.


Features

  • 🧊 True background blur, not a screenshot hack
  • 🎛️ Props for blurRadius, tintColor, tintOpacity
  • 🧱 Drop-in <View/> replacement (accepts all ViewProps)
  • ⚙️ !! ONLY !! Compatible with New Architecture

Installation

# with npm
npm i react-native-modern-blur-view

# with yarn
yarn add react-native-modern-blur-view

iOS (New Architecture)

cd ios
RCT_NEW_ARCH_ENABLED=1 pod install
cd ..
  • Xcode ≥ 15 recommended.

Android

  • No manual steps required.
  • Tested on Android 12+. (Older versions may work, but are not tested.)

Quick Start

import { View, StyleSheet } from 'react-native';
import { BlurView } from 'react-native-modern-blur-view';

export default function Example() {
  return (
    <View style={styles.container}>
      {/* Content behind the blur goes here */}

      <BlurView
        enabled
        blurRadius={16}        // 0..25 on Android, > 25 on iOS
        tintColor="#2323FF"    // any CSS color
        tintOpacity={0.35}     // 0..1
        style={styles.blurBox}
      />
    </View>
  );
}

const styles = StyleSheet.create({
  container: { flex: 1 },
  blurBox: {
    position: 'absolute',
    right: 24,
    bottom: 24,
    width: 160,
    height: 160,
    borderRadius: 16,
  },
});

Props

The component extends ViewProps.

| Prop | Type | Default | Platform | Description | | ------------- | ---------------------- | ----------- | ----------- | -------------------------------------------------------------------------------- | | blurRadius | number | 10 | iOS/Android | Strength of blur, 0–25 (Android scale, > 25 values are supported on iOS). Use higher values for heavier blur. | | tintColor | string | undefined | iOS/Android | CSS color string (#RRGGBB, etc.). Applied over the blur. | | tintOpacity | number | 0 | iOS/Android | 0–1 opacity of the tint overlay. | | enabled | boolean | true | iOS/Android | Toggles the effect without unmounting the view. | | style | StyleProp<ViewStyle> | — | iOS/Android | Size/position/border radius, like any <View/>. |

ℹ️ The view blurs content behind it, so you’ll usually want it properly positioned over existing content.


Demo App (Draggable BlurView)

Demo Videos

Android

https://github.com/user-attachments/assets/4d49d68e-dd6c-4975-b0a6-6da96566a677

iOS

https://github.com/user-attachments/assets/8b656e06-8374-4672-bc10-18d86b0a1629

This repo ships with an example showcasing:

  • Scrollable content (images + text)
  • A draggable floating BlurView (no extra gesture libs)
  • Bottom control panel with + / – buttons for size, opacity, radius

Run it locally:

# in the repo root
yarn
yarn prepare
cd example
yarn

# iOS
yarn ios

# Android (device/emulator running)
yarn android

Tips & Best Practices

  • Visual parity with design tools: The blurRadius passes the raw value to underlying views. On Android 25 is the max value, on iOS it goes way beyond.

  • Performance: Keep the blur area reasonably sized. On older devices, very large blurs can be expensive.


API Surface (TypeScript)

import { ViewProps } from 'react-native';

export type BlurViewProps = ViewProps & {
  blurRadius?: number;   // float
  tintColor?: string;    // '#2323FF', etc.
  tintOpacity?: number;  // 0..1
  enabled?: boolean;     // default: true
};

Have a feature request? Open an issue!

Contributing

PRs welcome! Please:

  1. Branch from main
  2. Keep changes minimal and well-scoped
  3. Add/adjust example if you change behavior
  4. Run example on both iOS & Android before opening your PR

Credits

  • Hardik Srivastava (@oddlyspaced)

References

  • https://github.com/Kureev/react-native-blur
  • https://github.com/efremidze/VisualEffectView