Every time I started a new React Native project, I faced the same frustration. On the web I had shadcn/ui — copy-paste components, own the code, customize everything with Tailwind. On React Native I had two choices: install a heavy npm package and fight abstractions every time I needed to tweak something, or build every component from scratch and waste the first week of every project on buttons and inputs.
Neither felt right. So I built a third option.
What is AniUI?
AniUI is an open source React Native component library that takes the same approach as shadcn/ui. Copy-paste components directly into your project, own every line of code, and customize freely with NativeWind. No lock-in, no surprise breaking changes, no fighting abstractions.
Docs: aniui.dev
GitHub: github.com/anishlp7/aniui
Why copy-paste instead of npm install?
When you install a component library as a package you're locked into their versioning, deep customization means fighting their abstractions, and updates can break your UI unexpectedly. When you copy-paste, the code lives in your project. You own it completely. Customize anything without workarounds.
shadcn/ui proved this model works brilliantly for web. AniUI brings the same philosophy to React Native.
What's inside right now?
Phases 1 and 2 are complete with 50+ components including buttons, inputs with leading/trailing icons and password toggle, modals, bottom sheets, toasts, cards, badges, avatars, skeleton loaders, OTP input, swipeable list item, stepper, FAB, empty state and action sheet.
Phase 2 added charts (line, bar, pie, area), pre-built blocks for auth, dashboards, settings and onboarding, plus an examples folder with working setups for Expo 54, Expo 55 and bare React Native.
Every component has unit tests living inside tests right next to the code — copy the component, the tests come with it.
How it's different from NativeBase or Gluestack?
These are solid libraries and I have nothing against them. The difference is philosophy. With AniUI you own every line of code, bundle size is only what you actually use, and NativeWind customization is native — no workarounds needed.
What's coming next
Phase 3 is a Figma UI Kit — every component in Figma, pixel perfect match to the code, launching on pro.aniui.dev.
Phase 4 brings premium screen kits for auth, onboarding, e-commerce, dashboards and social apps.
Phase 5 is a Figma plugin to export designs directly as AniUI components.
Phase 6 is something big — building in public, you'll see 👀
What I learned:
The community shapes the product more than any roadmap does. After posting Phase 1 on Reddit the feedback was specific and actionable — tests, theming docs, input icons, Android behaviour. All of it made it into Phase 2. Build in public and listen to developers using it in real projects.
Copy-paste is also harder to build than npm packages. Every component needs to be completely self-contained with zero hidden dependencies. Worth it for the developer experience though.
The best way to try AniUI is to scan the Expo Go QR code in the showcase app and see everything running on your real device.
Docs: aniui.dev
GitHub: github.com/anishlp7/aniui
Showcase: github.com/anishlp7/aniui-expo
If this resonates with frustrations you've felt in React Native — give it a star. It helps more than you know 🙏
Building AniUI fully in public — follow along on X @anishlp7
Top comments (0)