Expokit
AboutDocsComponentsChartsBlocksPricing
Sign inGet started
All chartsUsage & configPatterns & effectsShow / hide anythingChart themingInteractions

Cartesian

Area ChartBar ChartLine ChartCombo ChartPrice ChartNewPill Bar ChartNewStacked Pill ChartNewRange Bar ChartNewDiverging Bar ChartNew

Circular

Pie & DonutRadial ChartRadar ChartPolar AreaPro

Dashboard

Stat CardNewGoal BarsNewBar ListNewSegmented BarNewTick Bar ChartNewWaffle ChartNewBead ChartNewCalendar HeatmapNew

Gauges & Progress

GaugeScore GaugeNewActivity RingsNewFan GaugeNewTick RingNewLiquid GaugeNewMini RingNew

3D & Pixel

3D DonutNewCylinder Bar ChartNewIsometric BarsProPixel BarsPro

Specialty

TreemapProWaterfallProBulletProTimelineProCandlestickHeatmapFunnel

Classic

SparklineProgress RingsMultiLine (classic)StackedBar (classic)Ranking Bars (classic)
Bead Chart
Sponsor ExpoKit

Free stays free. Tip once — keep shipping.

Support
About
Docs
IntroductionWhat ExpoKit is and how it worksInstallationAdd ExpoKit to an Expo appThemingColours, radius and dark modeCLIinit, add, login and updateAI assistants (MCP)Cursor, Claude, Antigravity and moreRun on your phoneTry components in Expo GoChangelogWhat shipped recently
npx @expokit/cli@latest initQuick start
Components
Liquid Glass8 iOS 26 glass pieces3DNew14 tilt, flip and stack
Inputs 11
  • CalendarNew
  • Date PickerNew
  • Floating Input
  • OTP Input
  • Password Input
  • +6 more
Selection 6
  • Checkbox
  • Chip Group
  • Radio Group
  • RatingPro
  • Segmented Control
  • +1 more
Buttons 6
  • Button
  • Floating Action ButtonPro
  • Morphing Button GroupPro
  • QR Code ButtonPro
  • Slide to ConfirmPro
  • +1 more
Feedback 5
  • Alert
  • Progress
  • Skeleton
  • Spinner
  • Toast
Overlays 4
  • Action SheetNew
  • Bottom Sheet
  • Dialog
  • DrawerNew
Display 9
  • Accordion
  • Avatar
  • Badge
  • Card
  • CarouselPro
  • +4 more
Navigation 3
  • Bottom NavNew
  • Progress StepsNew
  • Tabs
Motion 3
  • Number TickerPro
  • Orb RevealPro
  • Text Animation
68 components · 329 live variantsAll components
Charts

Cartesian

  • Area Chart
  • Bar Chart
  • Line Chart
  • Combo Chart
  • Price ChartNew
  • Pill Bar ChartNew
  • Stacked Pill ChartNew
  • Range Bar ChartNew
  • Diverging Bar ChartNew

Circular

  • Pie & Donut
  • Radial Chart
  • Radar Chart
  • Polar AreaPro

Dashboard

  • Stat CardNew
  • Goal BarsNew
  • Bar ListNew
  • Segmented BarNew
  • Tick Bar ChartNew
  • Waffle ChartNew
  • Bead ChartNew
  • Calendar HeatmapNew

Gauges & Progress

  • Gauge
  • Score GaugeNew
  • Activity RingsNew
  • Fan GaugeNew
  • Tick RingNew
  • Liquid GaugeNew
  • Mini RingNew

3D & Pixel

  • 3D DonutNew
  • Cylinder Bar ChartNew
  • Isometric BarsPro
  • Pixel BarsPro

Specialty

  • TreemapPro
  • WaterfallPro
  • BulletPro
  • TimelinePro
  • Candlestick
  • Heatmap
  • Funnel

Classic

  • Sparkline
  • Progress Rings
  • MultiLine (classic)
  • StackedBar (classic)
  • Ranking Bars (classic)

Guides

  • Usage & config
  • Patterns & effects
  • Show / hide anything
  • Chart theming
  • Interactions
44 charts, built on the open-source expo-charts engineAll charts
Blocks

Screens

ChatProAn AI assistant chat screenCheckoutProA premium checkoutDashboardProA finance / analytics home screenDonut ShopProA dessert shop screen where the products rollInboxProA messaging inboxOnboardingProA minimal swipeable welcome flowProfileProAccount profile for any appSearch ResultsProA clean, monochrome search screenSettingsProAn iOS-style grouped settings screenSign InProOne configurable sign-in flow modelled on top mobile apps

App templates

  • AI assistant appPro
  • Business banking appPro
  • Food ordering appPro
10 complete screens — drop one in, wire your dataSee them on devices All templates All blocks
Pricing
DocsDashboardBead Chart

Bead Chart

Water glasses, workouts, check-ins: columns of dots, one per unit, up to a goal. Drag across to read each day.

<BeadChart />1 variantNew in 2.0.1

Live — the real React Native component rendered with react-native-web. Tap, drag and scrub it.

Installation#

terminal
npx expo install expo-charts react-native-svg

Usage#

Import the component and pass your data. Width defaults to the parent, so it adapts to phones, tablets and rotation.

BeadChart.tsx
<BeadChart  data={[{ label: "M", value: 6 }, { label: "T", value: 8 }]}  maxDots={8}/>

Props#

PropTypeDefault
data

One column each.

{ label, value, color? }[]—
unit / maxDots

Value of one dot; dots per column (the goal).

number1 / largest
dotSize / dotGap / gap

Geometry.

numberauto / 4 / 8
color / trackColor / inactiveOpacity

Colours.

string / string / numbertheme / muted / 0.35
showLabels / showTooltip

Day labels and value bubble.

booleantrue
formatValue

Bubble text.

(v, datum) => stringcompact
selectedIndex / defaultIndex

Controlled or initial selection.

number | null— / null
onSelect

Tap or drag (haptics via ChartProvider).

(index, datum) => void—
animate / accessibilityLabel

Motion and screen-reader label.

boolean / stringtrue / generated
PreviousWaffle ChartNextCalendar Heatmap

Did you like the content?