MagneticPressable
Pressable interaction component with magnetic motion feedback.
Import
import { MagneticPressable } from 'reactnatively';Installation
Install Reactnatively once in your React Native or Expo application, then import MagneticPressable from the framework package.
pnpm add reactnativelyInteractive preview
Pressable interaction component with magnetic motion feedback.
1import { Text } from 'react-native';2import { MagneticPressable } from 'reactnatively';34export function Example() {5 return (6 <MagneticPressable in>7 <Text>MagneticPressable content</Text>8 </MagneticPressable>9 );10}React Native usage example
1import { Text } from 'react-native';2import { MagneticPressable } from 'reactnatively';34export function Example() {5 return (6 <MagneticPressable in>7 <Text>MagneticPressable content</Text>8 </MagneticPressable>9 );10}Props
| Prop | Type | Default | Description |
|---|---|---|---|
| children | ReactNode | undefined | Content rendered inside the component. |
| style | StyleProp<ViewStyle> | undefined | Style applied to the outer container. |
| testID | string | undefined | Identifier used by tests and automation. |
| accessibilityLabel | string | undefined | Screen-reader label for the component. |
Variants and examples
Default
1import { Text } from 'react-native';2import { MagneticPressable } from 'reactnatively';34export function Preview() {5 return (6 <MagneticPressable in>7 <Text>MagneticPressable content</Text>8 </MagneticPressable>9 );10}Composed example
1import { Text } from 'react-native';2import { MagneticPressable, Box } from 'reactnatively';34export function MagneticPressableComposed() {5 return (6 <Box padding="md">7 <MagneticPressable>8 <Text>MagneticPressable content</Text>9 </MagneticPressable>10 </Box>11 );12}TypeScript IntelliSense
The component exports typed props, so editors can autocomplete prop names, union values, callbacks, and theme-aware style objects as you type.
1import type { ComponentProps } from 'react';2import { MagneticPressable } from 'reactnatively';34type MagneticPressableProps = ComponentProps<typeof MagneticPressable>;56const exampleProps: MagneticPressableProps = {7 style: undefined,8 testID: "reactnatively-example",9 accessibilityLabel: "Example control",10};1112export function TypedMagneticPressable() {13 return <MagneticPressable {...exampleProps} />;14}Theme support
MagneticPressable participates in the Reactnatively theme system through semantic colors, spacing, radii, typography, motion, and glass tokens where those props apply. Wrap your app in ReactnativelyProvider or ThemeProvider to keep light mode, dark mode, density, and custom tokens consistent.
Accessibility
Use accessible labels, hints, roles, and focus behavior when MagneticPressableis interactive. Reactnatively components are designed for React Native apps that need screen-reader support, reduced-motion handling, and consistent touch targets.
Expo compatibility
MagneticPressable can be used in Expo apps with TypeScript. Glass and blur behavior depends on platform capability, so production interfaces should keep text contrast and fallback tinting readable when native blur is unavailable.