@skipperllax/react-native-notifications
v0.1.1
Published
Notification library for React Native
Downloads
88
Readme
React Native Notifications
A highly advanced, production-ready notification/toast library for React Native with stunning animations powered by Reanimated v3 and Gesture Handler.
✨ Features
- 🎨 Beautiful Presets - Success, Error, Warning, and Info with gorgeous icons
- 🎭 Advanced Animations - SlideIn, ZoomIn, FadeIn, BounceIn, Dynamic Island
- 👆 Gesture Handling - Swipe to dismiss with elastic drag
- 📊 Progress Bar - Visual timer with smooth animations
- 🎯 Stack Management - Multiple notifications with depth effects
- 💨 Blur Effects - Glassmorphism support
- ⚡ Performant - All animations run on UI thread
- 🔧 Fully Customizable - Custom components and styles
- 📦 TypeScript - Fully typed
📦 Installation
npm install react-native-notifications react-native-reanimated react-native-gesture-handler react-native-safe-area-context expo-blurAdd Reanimated babel plugin to babel.config.js:
module.exports = {
plugins: ['react-native-reanimated/plugin'],
};🚀 Quick Start
import { NotificationProvider, Notifier } from 'react-native-notifications';
// Wrap your app
function App() {
return (
<NotificationProvider>
<YourApp />
</NotificationProvider>
);
}
// Show notifications anywhere
Notifier.show({
type: 'success',
title: 'Success!',
message: 'Your action was completed',
duration: 3000,
});📖 Documentation
See USAGE.md for complete documentation with examples.
🎭 Examples
// Different types
Notifier.show({ type: 'success', title: 'Success!' });
Notifier.show({ type: 'error', title: 'Error!' });
Notifier.show({ type: 'warning', title: 'Warning!' });
Notifier.show({ type: 'info', title: 'Info!' });
// Animations
Notifier.show({
title: 'Bouncy',
animationType: AnimationType.BounceIn,
});
// Gestures
Notifier.show({
title: 'Swipe me!',
gesture: { direction: SwipeDirection.Horizontal },
});
// Blur effect
Notifier.show({
title: 'Glassmorphism',
blur: { enabled: true, intensity: 80 },
});Contributing
License
MIT
Made with ❤️ using React Native Reanimated
