A React Native library for implementing 3D Touch home screen quick actions on iOS and Android.
React Native Quick Actions is a library that enables React Native developers to implement home screen quick actions (3D Touch shortcuts on iOS and app shortcuts on Android) in their mobile applications. It provides a JavaScript interface to define static or dynamic shortcuts that users can press on the app icon to perform specific tasks, improving app accessibility and user experience.
React Native developers building iOS and Android apps who want to add home screen shortcut functionality, particularly those targeting devices with 3D Touch or similar pressure-sensitive interactions.
Developers choose React Native Quick Actions because it offers a straightforward, cross-platform solution for implementing a native feature that would otherwise require separate iOS and Android code, saving development time while maintaining platform-specific behavior.
A react-native interface for Touch 3D home screen quick actions
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a unified JavaScript API for both iOS 3D Touch and Android app shortcuts, abstracting native implementations and saving development time.
Enables programmatic addition, removal, or updates of shortcuts during runtime using setShortcutItems and clearShortcutItems, as shown in the usage examples.
Handles quick actions when the app is launched from a closed state via popInitialAction, ensuring shortcuts work in all scenarios.
Supports both system icons and custom images, with platform-specific guidance for iOS Image.xcassets and Android drawable folders.
On Android, the userInfo object only accepts a 'url' key, restricting custom data passing compared to iOS, as acknowledged in issue #93.
Requires editing native files like AppDelegate.m on iOS and build.gradle on Android, adding complexity and potential for errors in integration.
Static quick actions must be defined in Info.plist for iOS, with no built-in cross-platform method, limiting consistency for Android.