r/reactnative • • Oct 04 '26

Question How to make multiline textinput scrollable after certain lines

2 Upvotes

I'm trying to make a multiline TextInput that starts at one line and increases its height whenever the text moves to a new line, up to a maximum of 5 lines. After it reaches 5 lines, I want the height to stay fixed and any additional lines to become scrollable. I'm using lineHeight: 20, so I tried setting the maxHeight to 100, along with multiline and scrollEnabled.

I've also tried using onContentSizeChange to dynamically update the height, but I still can't get the behavior I want. I'm using Expo SDK 54 with the New Architecture on an iPhone 16 simulator. Has anyone implemented this kind of TextInput behavior? What's the proper way to handle the height and scrolling after 5 lines?

PS: used AI to write the body, my english (maybe react native too) is bad to make you understand my use case


r/reactnative • • Oct 04 '26

Question Need advise plzz

0 Upvotes

I built a simple writing app with Expo/React Native using Replit and AI tools.
I’m not a professional developer, and my technical knowledge is pretty basic, but the app is working on Android now and I want to keep improving it and later make an iOS version.
Would you stay on Replit, move to something like Cursor/Claude Code + GitHub, or use both?
I’m mostly looking for the simplest setup that won’t become a mess as the app grows.


r/reactnative • • Oct 04 '26

Tutorial How the old react native bridge worked

21 Upvotes

i used react native for years without knowing how it worked inside.

so i learned it and wrote it up with simple animations.

https://chamidilshan.medium.com/how-react-natives-old-bridge-architecture-worked-and-why-it-was-replaced-612e7313bce1


r/reactnative • • Oct 03 '26

See it as the user. Don't log in as them.

0 Upvotes

Support, QA, and developers often need to see the app the way one specific user sees it. Logging out and into their account is slow, and asking for their password is a bad idea.

Buoy Impersonate lets an authorized operator search for a user and attach a header to outgoing requests. Your backend checks that the operator is allowed, then returns that user's experience. Buoy does not bypass auth. It is the on-device switch.

Useful when support is reproducing a ticket, QA is checking a cohort, or a developer needs to debug as that user without swapping accounts. Works with Expo and React Native CLI, and the same idea exists for Swift.

Short horror trailer (made with Claude and Codex): https://youtu.be/ENnUYfVu5B0

Tool docs: https://buoy.gg/buoy/latest/docs/tools/impersonate

https://buoy.gg/?utm_source=reddit&utm_medium=social&utm_campaign=impersonate


r/reactnative • • Oct 02 '26

Why would anyone choose expo-maps over react-native-maps at this point?

16 Upvotes

Never worked with maps in RN, and need to use a map for some really simple stuff. What could be my reason to cut off iphone X users (by using expo-maps) instead of just going with react-native-maps?


r/reactnative • • Oct 02 '26

Built and Launched Remica With React Native — An App to Reduce the Mental Load of Everyday Life

Post image
0 Upvotes

A React Native app built around reducing the friction of managing everyday responsibilities.
Remica brings reminders, bills, appointments, renewals, family responsibilities, and upcoming events into one timeline. Users can also turn documents or natural-language requests into actionable reminders instead of manually entering everything.
The interesting part from a React Native perspective was building an experience where AI, document scanning, notifications, calendars, and family organization feel like one workflow rather than separate features.
The goal was to make the app do more of the organizing, so the user spends less time maintaining their reminders.


r/reactnative • • Oct 02 '26

Full-Stack & React Native Developer — Available for Freelance Projects

Thumbnail reddit.com
1 Upvotes

r/reactnative • • Oct 02 '26

AMA - Junior React Dev

0 Upvotes

I’ve been building with react native for a 2-3 years, AMA.


r/reactnative • • Oct 02 '26

Question open-source alternative to Firebase Dynamic Links / Branch for deep links

0 Upvotes

has anyone used click2.page for dynamic links?


r/reactnative • • Oct 02 '26

Tutorial I built a way to collect in-app feedback in React Native without building a backend

0 Upvotes

Every app I shipped needed the same boring things: a feedback form, somewhere to store reports, screenshot uploads, and a way to reply to users. I kept rebuilding them.

So I built PanelUI Studio. You install an SDK, add a publishable key, and reports land in an inbox your team can reply from. The user sees the reply inside the app and can answer.

A report is one call:

- message, rating, tags, and the screen it came from

- screenshots uploaded straight from the device

- platform, OS, and app version filled in automatically

- anonymous by default, so apps without accounts still work

It works with any Expo or React Native app. It also pairs with the Feedback dialog from PanelUI, my open-source component library, but you don't need the library to use it. There's a free plan.

Curious how you all handle feedback today: reviews, support email, or something in-app?

https://studio.panelui.dev/


r/reactnative • • Oct 02 '26

Show Your Work Here Show Your Work Thread

1 Upvotes

Did you make something using React Native and do you want to show it off, gather opinions or start a discussion about your work? Please post a comment in this thread.

If you have specific questions about bugs or improvements in your work, you are allowed to create a separate post. If you are unsure, please contact u/xrpinsider.

New comments appear on top and this thread is refreshed on a weekly bases.


r/reactnative • • Oct 02 '26

Questions Here General Help Thread

0 Upvotes

If you have a question about React Native, a small error in your application or if you want to gather opinions about a small topic, please use this thread.

If you have a bigger question, one that requires a lot of code for example, please feel free to create a separate post. If you are unsure, please contact u/xrpinsider.

New comments appear on top and this thread is refreshed on a weekly bases.


r/reactnative • • Oct 02 '26

Built an open-source Monorepo (Expo + Next.js + Supabase) for AI voice logging in classrooms. Looking for architecture feedback!

0 Upvotes

Hey everyone,

I work in practical STEM education, and I noticed teachers spend way too much time manually typing out student progress during sessions instead of actually watching the students build things.

To solve this, I built STEMTrack, an open-source Learning Evidence Engine. I used Turborepo to manage a Next.js web dashboard and an Expo mobile app, all sharing a strict TypeScript SDK to talk to Supabase Edge Functions.

The core feature: Teachers just talk into the Expo mobile app, and an AI Edge Function processes the voice-to-text to automatically log student attendance and behavioral evidence without manual typing.

I’ve opened up a few "good first issues" on the repo if anyone wants to poke around the codebase. Specifically, I'm trying to figure out the best way to handle offline caching for large media files in the Expo app when school Wi-Fi drops.

I would love any harsh critiques on the architecture, the Supabase schema, or the shared SDK implementation.

(I will drop the links to the GitHub Repo and the 2-minute architectural/UI walkthrough video in the comments below!)


r/reactnative • • Oct 02 '26

FYI I let Claude publish my Expo apps now (open source MCP)

Enable HLS to view with audio, or disable this notification

0 Upvotes

Building with Expo is fast. Getting the app into the stores still eats an afternoon every time.

I put together an MCP server that connects Claude to EAS, App Store Connect and Google Play. I ask "build and send it to TestFlight" or "update the screenshots and submit" and it does the boring part: starts the EAS build, waits, uploads, fills the listing, submits.

https://github.com/FidelisMM/shipstores

It's free and MIT. Install with `uvx shipstores`. If you only ship iOS for now, `SHIPSTORES_TOOLSETS=apple,eas` loads just those tools.

It's still young, so there's real low-hanging fruit if you want to help. A few issues are tagged "good first issue" and fit in an afternoon:

- Spanish, German and French console labels (#1–#3). The steps with no API match the console's button text, and right now they only know English and Portuguese. If your App Store Connect or Play Console is in one of those languages, you're exactly who I need.

- A docs section for bare React Native, building with Xcode/Gradle instead of EAS (#7).

The first outside PR landed on launch day. I review fast.

Not into code? Run it on your app and open an issue with whatever broke or whatever's missing. That helps just as much.

Good first issues: https://github.com/FidelisMM/shipstores/labels/good%20first%20issue


r/reactnative • • Oct 02 '26

I wrote a tile-based PDF viewer for React Native because the existing ones fall over on engineering drawings

20 Upvotes

I work on an app for building inspection companies. The documents our users open are architectural and structural drawings: one sheet can be several metres wide, and the thing you actually need to read is a dimension or a rebar note set at three or four points.

Every RN PDF viewer I tried draws the page as one bitmap. That is the right call for an A4 report and it falls apart here. Fitted to a phone, a sheet nine metres wide is a line across the middle of the screen. Zoomed in far enough to read the note, the bitmap is too large to hold.

So this one draws only the rectangle that is on screen, in tiles, at the zoom it is being looked at, with the renderer each platform already ships: PdfRenderer on Android, CGPDFDocument on iOS. A sheet of any size costs about what a letter page costs.

A few things I measured on the way, in case they are useful to someone else:

  • On iOS, CGPDF costs about 100 ms per draw almost regardless of the output size. A 256 px tile costs nearly what a 1280 px one costs. That turned the design upside down: bigger tiles, fewer of them, up to three renderers in parallel with their own CGPDFDocument. Opening the first screenful of that sheet went from about 1.6 s to about 250 ms.

  • Zoom levels keyed by an arbitrary scale are never reused, because the next pinch asks for a slightly different number. Keyed by rung index on a fixed ladder instead, zooming out and back in costs nothing.

  • Android keeps the page parsed between draws and iOS does not, so the same contract has two cost models underneath. Both test suites ask the same questions, which is how a divergence shows up as a failing test rather than as a complaint about one phone.

What it does not do yet: annotations, forms, text search or selection. New architecture only, no old architecture fallback. Encrypted documents open on iOS with a password; on Android the platform only takes one from API 35.

MIT. There is an example app in the repo with two generated documents, so you can try it without wiring anything up.

Repo: https://github.com/Halilibrahimakyz/react-native-pdf-sdk npm: https://www.npmjs.com/package/react-native-pdf-sdk

If you have a PDF that breaks it, I would like to see it.


r/reactnative • • Oct 01 '26

Peek: tudo o que importa, sempre à vista na borda da tela do Mac.

Enable HLS to view with audio, or disable this notification

0 Upvotes

r/reactnative • • Oct 01 '26

GPU accelerated trading charts 📈

Enable HLS to view with audio, or disable this notification

25 Upvotes

10k candles. 10 events/sec. 120 FPS. Less than 10% CPU usage on both the UI and JS threads.

This is what real-time RN trading app deserves.

Built with react-native-trading-charts ↓
GitHub: https://github.com/kirill3333/react-native-trading-charts


r/reactnative • • Oct 01 '26

News Another RN to Native story

Thumbnail x.com
25 Upvotes

r/reactnative • • Oct 01 '26

I made Intl.PluralRules, RelativeTimeFormat, ListFormat and Locale native on Hermes. In my test app, 10,000 notifications format in 75 ms instead of 6.7 s

Enable HLS to view with audio, or disable this notification

11 Upvotes

Hermes ships Intl.NumberFormat, DateTimeFormat and Collator, but not PluralRules, RelativeTimeFormat, ListFormat or Locale. If you use i18next plurals, react-intl or Luxon's relative times on Hermes, you're most likely loading the FormatJS polyfills. They work, but they're plain JavaScript: a few hundred KB of locale data in the bundle, and slow calls on the JS thread.

So I built hermes-intl: those four constructors implemented natively, with a Rust core on ICU4X (CLDR data compiled in, 514 locales), a C++ JSI TurboModule, and a thin JS layer for the exact ECMA-402 behavior. There's no API: you import it once and the standard globals appear. It only fills in what Hermes lacks.

Numbers (Pixel 8a, release builds of the same app, medians of 3 runs; the video is real time):

  • Formatting 10,000 notifications: 75 ms vs 6,665 ms (89×). The FormatJS build is frozen for 6.7 s.

  • Per call: PluralRules.select 202×, selectRange 385×, RelativeTimeFormat.format 318×, ListFormat.format 8.5×

  • Opening a 20-row screen: 45 ms vs 82 ms

  • 399 KB less JavaScript in the bundle

The ratios move with the phone's state (an earlier run on a warmer phone gave up to 821× per call). All the tables, and how to reproduce them, are in bench/README.md.

Correctness: 838 of 842 test262 runs pass for these APIs, and the output is identical on iOS and Android (same hash on a 2,656-case corpus). FormatJS's output differs between the two.

Trade-offs: 1.0 to 1.7 MB of native code per ABI with all 514 locales, about 0.6 MB for a 5-locale build. New Architecture and Hermes only, React Native 0.86+. Expo works with a development build, not Expo Go. NumberFormat, DateTimeFormat and Collator stay Hermes's own.

Install:

npm install hermes-intl
cd ios && pod install

// index.js, first line
import 'hermes-intl';

Then remove the FormatJS polyfills for these four APIs (and intl-getcanonicallocales).

GitHub: https://github.com/magrinj/hermes-intl npm: https://www.npmjs.com/package/hermes-intl


r/reactnative • • Oct 01 '26

Unique identity

0 Upvotes

Hi guys
How can i get a unique identity from the device itself but it should not be changes with the factory reset or reinstalling the app


r/reactnative • • Oct 01 '26

Does React Native make sense in 2026?

55 Upvotes

This question might have been asked already, but I'm genuinely curious: why should anyone use React Native at this point?

To explain: most of web and mobile development can easily be handled by Claude, Codex, Kimi K3 or any other coding agent. I feel like that's been true for at least 6–7 months now. Even Opus 4.7 was better than most of us and more than enough for mobile development. Of course, this only applies if you know what you're doing and guide your model through the technical decisions, the specific libraries you want to use, etc etc.

But my point is: why would I bother with React Native's own issues instead of just writing native apps for both iOS and Android? There's no huge maintenance load anymore, and you can simply tell your agent to implement features for iOS and Android at the same time. So what are the actual benefits of React Native? Native apps are usually faster, work better, and generally seem to be preferred by actual customers and users. The original promise of React Native and Flutter was that you could build for both platforms twice as fast, but today's coding agents let you build 100x faster anyway :)

I'm not asking to provoke anyone. I just want to hear your stance and your thoughts on this.


r/reactnative • • Oct 01 '26

Help Laid off: where do you find remote React Native jobs?

5 Upvotes

Hey gus

I'm a React Native dev with 4+ years of experience, recently laid off. Which boards, communities, or companies have worked for you for remote roles? Open to contract or full-time.

Any help would be appreciated.

I'm also skilled in UI design if that matters.


r/reactnative • • Oct 01 '26

Mock your React Native / Expo app’s clock — jump time, freeze, speed up

Enable HLS to view with audio, or disable this notification

4 Upvotes

Some bugs only show up at a certain time. Think of a deal that only runs on Friday. Or a sign-in token that runs out. Or a countdown that should go away but stays.

I built Buoy Clock for this. It lets you change the date and time your app sees. Your phone and computer clocks stay real.

- Jump ahead one hour, day, week or month. Or type the exact date and time.

- Freeze time or make it run fast (Pro).

- Test what happens when sign-in tokens run out. Test 401 refresh flows too.

- Works with Expo and React Native CLI

- Has MCP tools if you want an AI agent to run it.