git404hub

what is expo-motion-tabs fr?

rit3zh/expo-motion-tabs — explained in plain English

Analysis updated 2026-05-18

27TypeScriptAudience · developerComplexity · 2/5Setup · easy

tl;dr

A drop in animated bottom tab bar for Expo Router apps that opens a morphing popup panel when a tab is tapped.

vibe map

mindmap
  root((expo-motion-tabs))
    What it does
      Animated tab bar
      Morphing popup panel
    Tech stack
      Expo
      React Native
      Reanimated
    Use cases
      Replace default tab bar
      Custom tab popups
      Themed navigation
    Audience
      Mobile developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Replace a plain bottom tab bar in an Expo Router app with a smoothly animated one.

VIBE 2

Show custom popup content for each tab using a morphing panel animation.

VIBE 3

Theme the tab bar's colors and popup bodies to match an app's existing design.

VIBE 4

Add polished tab transitions to a React Native app without building the animation logic from scratch.

what's the stack?

TypeScriptExpoReact NativeReanimated

how it stacks up fr

rit3zh/expo-motion-tabs5bv57zcm44-max/noxus-ai-open-whatsappadrianhajdin/react-native-lingua
Stars272727
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyeasymoderatemoderate
Complexity2/54/53/5
Audiencedeveloperdevelopervibe coder

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · easy time til it works · 30min

Android preview is not yet available, so current usage is best supported on iOS.

in plain english

expo-motion-tabs is a ready to use animated bottom navigation bar component for mobile apps built with Expo Router, a framework for building iOS and Android apps using React Native, a tool that lets you write mobile apps in JavaScript or TypeScript. The bottom tab bar is the row of icons at the bottom of the screen you tap to switch between sections of an app. What makes this different from a standard tab bar is the animated popup panel. When you tap a tab, a morphing panel slides up from the bottom, giving each tab its own custom content area with a smooth visual transition. The tab bar itself uses fluid animations as you switch between tabs. To use it, you replace the default tab bar in your Expo Router layout with the included AnimatedTabBar component, passing it a function that returns whatever content you want to show in the popup for each tab. This is meant as a drop in replacement, so you do not need to rewrite your existing navigation structure. The component is written in TypeScript and is designed to be themed to match your app's own color scheme, with the ability to supply custom popup content for each tab. The project is built with Expo 55, React Native 0.83, Reanimated 4, a high performance animation library that runs animations on the device's UI thread for smoothness, Gesture Handler 2, and Expo Router. It currently has a working preview on iOS, with an Android preview still listed as a to do item in the README. Installation is a simple git clone followed by starting the project with bun.

prompts (copy fr)

prompt 1
Help me install expo-motion-tabs and wire it into my existing Expo Router tabs layout.
prompt 2
Show me how to write a custom popup body component for each tab using this library.
prompt 3
Explain how the AnimatedTabBar component replaces the default Expo Router tab bar.
prompt 4
Walk me through theming expo-motion-tabs to match my app's color palette.

Frequently asked questions

what is expo-motion-tabs fr?

A drop in animated bottom tab bar for Expo Router apps that opens a morphing popup panel when a tab is tapped.

What language is expo-motion-tabs written in?

Mainly TypeScript. The stack also includes TypeScript, Expo, React Native.

How hard is expo-motion-tabs to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is expo-motion-tabs for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.