TrademarkTrademark
Docs
Ctrl k
Search docs...
Components

Card

Updated: October 18, 2026
View on GitHub
Soon
Not released yet. This is on main and is not in any published version yet. It will not install today.

Card is a Column with a surface background, a neutral-medium border and an l radius. Give it onPress and it becomes a button that dims slightly while pressed. It takes every Flex prop, so padding, gap, size and the defaults themselves can all be changed. See the web Card page.

Basic card

Pressable

onPress makes the card pressable and gives it the button role. onClick works too, as on the web.

Selected

selected swaps the border to brand-medium and the background to brand-alpha-weak, for the chosen item in a list. It is reported to screen readers on a pressable card.

Differences from the web

  • Pressed, not hover. A pressable card dims to 80% opacity while pressed, in place of the web's hover effect.
  • onPress or onClick. Both work. onPress wins when both are set. There is no href.
  • Clipping. radius does not clip children such as an image. Pass overflow="hidden" when it should.

Props

Card takes every Flex prop, including the spacing, size, surface and breakpoint props, and every React Native View prop.

Prop
Type
Default
Description
onPress() => voidMakes the card pressable.
onClick() => voidThe web's name for onPress.
selectedbooleanBrand border and tint.
directionFlexProps["direction"]"column"Main axis, as on Flex.
radiusRadiusSize"l"Corner radius.
backgroundFlexProps["background"]"surface""brand-alpha-weak" while selected.
borderFlexProps["border"]"neutral-medium""brand-medium" while selected.
childrenReactNodeContent. Bare strings are wrapped in Text.
Edit this page on GitHub
TrademarkTrademark
Built with curiosity by Lorant One and the Design Engineers Club