Primitives

GlassPressable

Pressable primitive with glass-aware interaction styling.

Import

typescript
import { GlassPressable } from 'reactnatively';

Installation

Install Reactnatively once in your React Native or Expo application, then import GlassPressable from the framework package.

bash
pnpm add reactnatively

Interactive preview

Base primitive
GlassPressable

Pressable primitive with glass-aware interaction styling.

childrenstyletestIDaccessibilityLabel
GlassPressableExample.tsx
1import { Text } from 'react-native';2import { GlassPressable } from 'reactnatively';34export function Example() {5  return (6    <GlassPressable style={{ padding: 16 }}>7      <Text>GlassPressable content</Text>8    </GlassPressable>9  );10}

React Native usage example

GlassPressableExample.tsx
1import { Text } from 'react-native';2import { GlassPressable } from 'reactnatively';34export function Example() {5  return (6    <GlassPressable style={{ padding: 16 }}>7      <Text>GlassPressable content</Text>8    </GlassPressable>9  );10}

Props

PropTypeDefaultDescription
childrenReactNodeundefinedContent rendered inside the component.
styleStyleProp<ViewStyle>undefinedStyle applied to the outer container.
testIDstringundefinedIdentifier used by tests and automation.
accessibilityLabelstringundefinedScreen-reader label for the component.

Variants and examples

Default

GlassPressableDefault.tsx
1import { Text } from 'react-native';2import { GlassPressable } from 'reactnatively';34export function Preview() {5  return (6    <GlassPressable style={{ padding: 16 }}>7      <Text>GlassPressable content</Text>8    </GlassPressable>9  );10}

Composed example

GlassPressableComposed.tsx
1import { Text } from 'react-native';2import { GlassPressable, Box } from 'reactnatively';34export function GlassPressableComposed() {5  return (6    <Box padding="md">7      <GlassPressable>8        <Text>GlassPressable content</Text>9      </GlassPressable>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.

GlassPressable.types-example.tsx
1import type { ComponentProps } from 'react';2import { GlassPressable } from 'reactnatively';34type GlassPressableProps = ComponentProps<typeof GlassPressable>;56const exampleProps: GlassPressableProps = {7  style: undefined,8  testID: "reactnatively-example",9  accessibilityLabel: "Example control",10};1112export function TypedGlassPressable() {13  return <GlassPressable {...exampleProps} />;14}

Theme support

GlassPressable 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 GlassPressableis interactive. Reactnatively components are designed for React Native apps that need screen-reader support, reduced-motion handling, and consistent touch targets.

Expo compatibility

GlassPressable 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.