# react-native-enriched **Repository Path**: mirrors_software-mansion/react-native-enriched ## Basic Information - **Project Name**: react-native-enriched - **Description**: Rich text input component for React Native. - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-04 - **Last Updated**: 2026-03-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README react-native-enriched by Software Mansion # react-native-enriched `react-native-enriched` is a powerful React Native library that exposes a rich text editor component: - ⚡ Fully native text input component - đŸ•šī¸ Synchronous text styling - 🔍 Live styling detection and HTML parsing - 🎨 Customizable styles - 📱 Mobile platforms support - 🏛 Supports only the New Architecture `EnrichedTextInput`, the rich text editor component is an uncontrolled input. This means that it doesn't use any state or props to store its value, but instead directly interacts with the underlying platform-specific components. Thanks to this, the component is really performant and simple to use while offering complex and advanced features no other solution has. ![react-native-enriched-demo](https://github.com/user-attachments/assets/a2c968c0-9b85-492f-ac71-af64ef231fbf) Since 2012 [Software Mansion](https://swmansion.com) is a software agency with experience in building web and mobile apps. We are Core React Native Contributors and experts in dealing with all kinds of React Native issues. We can help you build your next dream product – [Hire us](https://swmansion.com/contact/projects?utm_source=react-native-enriched&utm_medium=readme). ## Table of Contents - [Prerequisites](#prerequisites) - [Installation](#installation) - [Usage](#usage) - [Non Parametrized Styles](#non-parametrized-styles) - [Links](#links) - [Mentions](#mentions) - [Inline Images](#inline-images) - [Style Detection](#style-detection) - [Other Events](#other-events) - [Context Menu Items](#context-menu-items) - [Customizing \ styles](#customizing-enrichedtextinput--styles) - [API Reference](#api-reference) - [Known limitations](#known-limitations) - [Future Plans](#future-plans) - [Contributing](#contributing) - [License](#license) ## Prerequisites - `react-native-enriched` currently supports only Android and iOS platforms - It works only with [the React Native New Architecture (Fabric)](https://reactnative.dev/architecture/landing-page) and supports following React Native releases: `0.81`, `0.82`, `0.83` and `0.84`. - If you would like to use `react-native-enriched` in React Native `0.79` or `0.80` use `react-native-enriched 0.4.x`. ## Installation ### Bare react native app #### 1. Install the library ```sh yarn add react-native-enriched ``` #### 2. Install iOS dependencies The library includes native code so you will need to re-build the native app to use it. ```sh cd ios && bundler install && bundler exec pod install ``` ### Expo app #### 1. Install the library ```sh npx expo install react-native-enriched ``` #### 2. Run prebuild The library includes native code so you will need to re-build the native app to use it. ```sh npx expo prebuild ``` > [!NOTE] > The library won't work in Expo Go as it needs native changes. ## Usage Here's a simple example of an input that lets you toggle bold on its text and shows whether bold is currently active via the button color. ```tsx import { EnrichedTextInput } from 'react-native-enriched'; import type { EnrichedTextInputInstance, OnChangeStateEvent, } from 'react-native-enriched'; import { useState, useRef } from 'react'; import { View, Button, StyleSheet } from 'react-native'; export default function App() { const ref = useRef(null); const [stylesState, setStylesState] = useState(); return ( setStylesState(e.nativeEvent)} style={styles.input} />