Weeks of UI, shipped in minutes.

Animated components and full screens for Expo & React Native. One command, and the code is yours — on iOS, Android, web and Expo Go.

70 components · 347+ variants · 23 charts

~/my-app

❯

Floating Input

0

Components

Inputs to overlays, each with live variants.

0+

Variants

Ready-made looks you can copy as-is.

0

Screens

Sign in, checkout, settings and more.

0

Charts

53+ animated, touchable chart variants.

Why we built it

Every app rebuilds the same inputs, sheets and toasts — and burns a sprint polishing them. ExpoKit hands you that polish on day one: springs, gestures and themes that feel native, in code you own. What used to take a week now takes a coffee break.

Playground

Real components, running right here.

Not videos — the actual React Native code. Pick one, try its variants, then copy one command.

All 70 components

Navigation

Bottom Nav

Five tab bars from one prop — floating capsule, sliding pill, centre action button.

4 variants

$ npx @expokit/cli@latest add bottom-navDocs
9:41

3D

Depth you can feel. No libraries.

A wallet that fans out, a ring you spin, a deck you swipe — native-driven 3D that runs in Expo Go. Go on, touch them.

14 3D components

Blocks

Whole screens. Zero blank canvas.

Sign in, checkout, inbox, settings — composed from the kit and wired with props. Drop one in and connect your data.

All 9 blocks
9:41
Sign In screen
Sign InProOne configurable sign-in flow modelled on top mobile apps: Apple / Google / Microsoft / GitHub buttons, phone number + SMS code with a dial-code picker and resend countdown, and email with a password (plus sign-up strength meter and forgot password), a one-time code or a magic link with a 'Check your inbox' screen. Every method is optional; steps slide in direction-aware, respect Reduce Motion, and stay clear of the keyboard. Monochrome by default.
9:41
Checkout screen
CheckoutProA premium checkout: product bag with quantity steppers, delivery cards, payment method, a collapsible promo code, a live summary and a sticky “Slide to pay” bar that ends on an order-placed screen.
9:41
Dashboard screen
DashboardProA finance / analytics home screen: a collapsing “Overview” large title with bell and avatar, time-of-day greeting, Day / Week / Month switcher, a revenue area chart that rises in on every period change and scrubs under your finger while the headline number rolls, KPI tiles with sparklines, springy quick actions and recent transactions — plus skeleton loading and pull-to-refresh.
9:41
Inbox screen
InboxProA messaging inbox: search, All / Unread / Mentions filter chips with counts, swipeable rows to archive, delete or mark read, unread count badges and a friendly empty state.
9:41
Profile screen
ProfileProAccount profile for any app: a centred header (avatar, name, badge, email · phone, Edit profile), a highlights strip, then iOS-style grouped rows for personal details, account, preferences and support, and a sign-out button. Monochrome by default; sections rise in smoothly and respect Reduce Motion.
9:41
Settings screen
SettingsProAn iOS-style grouped settings screen: profile header with a Pro badge, System / Light / Dark picker, animated switches, chevron rows with details and a destructive sign-out row.

Charts

23 charts, 53+ variants.

Animated, touchable charts — scrub tooltips, drag around a donut, turn a gauge.

All 23 charts

Install

Copy. Paste. Ship.

  1. 01

    Any Expo app

    SDK 55 or newer, Expo Router or not. Works in Expo Go.

  2. 02

    Add a component

    @expokit/cli@latest add button copies the source into src/components/ui.

  3. 03

    Make it yours

    Wrap the app in <KitProvider accent> or edit the file — it's your code now.

SignIn.tsx
import { FloatingInput } from "@/components/ui/floating-input";import { Button } from "@/components/ui/button"; export function SignIn() {  return (    <>      <FloatingInput        label="Email"        variant="outlined"        clearable      />      <Button variant="accent" size="lg" block>Continue</Button>    </>  );}

I'm on X every day looking at the apps people ship, and I've built a lot of apps myself. Every time, the same thing slowed me down: the UI. On the web you have shadcn and hundreds of component libraries that make building fast. For mobile apps there was nothing close.

I researched for a long time and found bits and pieces — nothing that felt good enough. So I built the thing I wished existed: one place for polished, animated components for Expo & React Native that you copy in and own.

Front-end is what I'm best at, and I'll keep shipping better components. Next up: complete apps — one command and your whole app is ready, UI and all, for you to shape however you like. Use it, break it, and tell me what you think.

Karan@itsmeekaran · ExpoKit

FAQ

Frequently asked questions

Still stuck? Contact support
How do I install ExpoKit?
Any Expo app on SDK 55 or newer works, with or without Expo Router. Run npx @expokit/cli@latest init once, then npx @expokit/cli@latest add button — the source is copied into src/components/ui and any missing packages are installed. See Installation.
Does it work in Expo Go?
Yes. Every component, block, chart and template runs in Expo Go on iOS and Android, and on the web — there are no custom native modules and no prebuild step.
I bought Pro — how do I get access?
Pro unlocks on the account you were signed in with at checkout, usually within a few seconds of payment. Your plan is shown on your Account page. If it still says Free after a few minutes, sign out and back in, then open a ticket with the email you paid with.
How do I log in with the CLI?
Create a token on your Account page, run npx @expokit/cli@latest login and paste it. whoami shows the plan the CLI sees; logout removes the token from that machine. Revoke tokens you no longer use.
Can I get a refund?
Pro is a one-time purchase. If something isn't working for you, open a Billing ticket on Support with the email you paid with and what went wrong — we'll help fix it or sort out a refund.
Where are my receipt and invoice?
Dodo Payments, our merchant of record, emails a receipt right after checkout. Need a formal invoice with your company name, address or tax ID? Open a Billing ticket and we'll send one.
What am I allowed to build with it?
Free items are MIT licensed — use them anywhere. Pro components and blocks can be used in unlimited personal and commercial apps, including client work. What you can't do is resell or redistribute the source itself as a UI kit or template.
Can I request a component?
Please do — pick “Request a component” in the contact form and describe the screen or interaction (links and screenshots help).

Stop rebuilding. Start shipping.

Your first component is one command away.