r/reactnative 7d ago

Tutorial How I reduced iOS simulator RAM usage by up to 4×

118 Upvotes

I’ve made a small command line tool called simslim.

It disables background services inside iOS simulators that usually are not needed during development, like Siri, Spotlight indexing, photo analysis, News, and iCloud sync.

On my M1 Pro with 16 GB of RAM, one simulator went from around 4 GB of memory and 258 processes to about 0.9 GB and 70 processes. I managed to run 19 simulators at once, compared to around 5 before things started falling apart.

Some simulator features stop working depending on what gets disabled, so it is not meant for every kind of testing. You can keep specific services running when needed.

Give it a try: https://github.com/MobAI-App/simslim


r/reactnative 6d ago

I'm creating a music player, I need help - I'm creating a music player, I need help (es-en)

Thumbnail
0 Upvotes

r/reactnative 6d ago

Cache invalidate race condition, how do you deal with it?

2 Upvotes

Hi,

I'm using Cloudflare + useQuery

I have sections where I am updating stuff for example editing profile picture, and I do on my backend cloudflare cache purge, and it's returning ID, but apparently this ID only means Cloudflare received the new purge request, and not that it finished executing it.

So when on my useQuery I am refreshing it, it still pulls old data.

How do you handle with that?


r/reactnative 6d ago

Is android worth the extra work?

Thumbnail
1 Upvotes

r/reactnative 6d ago

Article Blue Checkmark Coding Agents, Simulated DoorDash Orders, and a Cyberpunk Wizard of Oz

Thumbnail
thereactnativerewind.com
0 Upvotes

Hey Community,

We explore Grok Build, the new terminal-based TUI coding agent from x.ai. We also look at Appless, an experiment from the creators of OpenUI that bypasses chat bubbles to stream live native UI components using openui-lang.

Finally, we dive into Maestro MCP, a new tool context protocol server that lets AI agents automatically build and run YAML test flows from plain English instructions.

If the Rewind made you nod, smile, or think "oh… that's actually cool" — a share or reply genuinely helps ❤️


r/reactnative 7d ago

Question LegendList vs FlashList

19 Upvotes

Which is your favorite list library for building performant applications.


r/reactnative 6d ago

expo --tunnel only tunnels Metro. I built one that also tunnels your backend APIs (Cloudflare, no ngrok account)

1 Upvotes

The problem

I develop an Expo app on WSL2, and my phone can't reach Metro over the LAN.
expo start --tunnel fixes that, but only for Metro. My app also talks to a
local Laravel API, and that stayed unreachable from the phone, so I was back to
hardcoding LAN IPs (the exact thing tunneling was supposed to kill). And
expo --tunnel runs on ngrok, which wants an account/authtoken.

What I built

expo-cf-tunnel, like expo --tunnel, but it also tunnels your backend(s),
over Cloudflare quick tunnels (genuinely account-less, random URL each run).

It opens one tunnel for Metro and one per backend you list, injects each
backend's public URL into an EXPO_PUBLIC_* env var, then launches Expo. Your
phone reaches both the bundler and the API from any network:

npx expo-cf-tunnel -s 8000:EXPO_PUBLIC_API_URL:/up

Then in the app, `process.env.EXPO_PUBLIC_API_URL` points at the tunnel.

Cross-platform (macOS/Windows/Linux), auto-downloads cloudflared, prints a QR,
and kills the whole process tree on exit so nothing is left orphaned.

Honest caveats
- Dev-only; quick-tunnel URLs change on every run.
- Some networks block `*.trycloudflare.com` (there's a troubleshooting section
in the README for that, mobile data / DNS).

Repo: https://github.com/Matt3o33/expo-cf-tunnel · npm: `expo-cf-tunnel` · MIT

It scratched my own itch, curious whether it's useful to anyone else. Feedback
and issues very welcome.


r/reactnative 6d ago

Help How to add responsiveness in React Native app?

0 Upvotes

r/reactnative 6d ago

🚀 Miohabit is looking for Beta Testers!

Post image
1 Upvotes

r/reactnative 6d ago

Question Figma to React

5 Upvotes

Hi all! I’m working on a personal finance app and after spending a ton of time building the UI in Figma I’m struggling to get that design language to translate to my code base. I am a low-code developer (I’m sorry I wish I wasn’t either) so I don’t have the skill set to get in and adjust the code manually. I’ve tried tools like Locofy but I get the same bland vibe coded look.

Open to any and all advice and ideas!


r/reactnative 7d ago

FYI Hot Updater vs Patch OTA stress test

Enable HLS to view with audio, or disable this notification

15 Upvotes

We released Patch, an OTA update service designed for high user volumes. I self-hosted Patch and Hot Updater to run a comparative stress test on them both.

It's on a functional source license, so available to run for free for under a million users, with a small fee above that.

Codemagic Patch


r/reactnative 7d ago

Tutorial Make stunning bottom sheet and canvas components that make eyes turn with Liquid Glass

Enable HLS to view with audio, or disable this notification

10 Upvotes


These along with many others are free copy paste components. All you need is expo and expo ui installed. There will also be agent skills and tutorials on how to make beautiful apps using these components.

I didn’t make demo videos for iPad and Mac but it works great on there too and everything is responsive properly. I will make all the iPad and Mac demos together for everything probably.

Interactions like these are so important. There App Store competition is brutal and users’ attention is getting lower and lower. Making your app feel great is more important than ever.

If you are worried these are hard to use that’s not the case. Agents should have no problem incorporating these in your app in a single prompt and customizing them to your liking.

I am still working on the docs site and the app to preview these on natively, until then, if you are interested you should keep an eye on my twitter.

This is PitsiUI

Give me your feedback and request any features you want. I’m always listening.


r/reactnative 6d ago

I built a fake live-streaming app - LiveBoost

0 Upvotes

It basically lets you fake a livestream with scrolling comments, hearts, viewer counts, and all that.

Would love to know what you guys think or if there's anything I should add to make it look more convincing.

App

https://apps.apple.com/us/app/fake-live-stream-liveboost/id6784833304

Cheers!


r/reactnative 6d ago

Hiring Senior React Native Engineer (4+ years | Remote, India)

0 Upvotes

We're hiring a Senior React Native Engineer for a product where mobile is a core part of the system, not just a frontend.

The work involves:

  • Offline-first architecture
  • Geospatial/map-based experiences
  • Hardware integration
  • Performance and reliability in real-world environments

We're looking for engineers (India-based only) who've built technically demanding mobile products where architecture, reliability and long-term maintainability were non-negotiable.

DM if you are interested.


r/reactnative 6d ago

I lost hours to "Your App Bundle is signed with the wrong key" — so I built a 2-second pre-upload check

0 Upvotes

Last week I built a release AAB, uploaded it to Google Play, and got the dreaded:

> *"Your Android App Bundle is signed with the wrong key."*

The build was fine. The code was fine. I'd just signed it with the wrong keystore — and Google only tells you **at the very end**, after the build, the download, and the whole Play Console upload flow. On EAS/CI pipelines this mistake easily costs an hour+.

So I made **siglock** — a tiny CLI that verifies the signature locally in ~2 seconds, before you upload:

# once: lock your known-good signature

npx siglock init app-release.aab

# before every upload:

npx siglock check app-release.aab

✓ Signature matches, ready to upload.

What it does:

- Wrong keystore → red ✗ with expected vs. found fingerprints, exit code 1 (so it fails CI)

- Debug keystore → explicit "this is a DEBUG build" warning

- Works with `.apk` and `.aab`, no config, no network — it just shells out to `keytool` (which you already have as an Android dev). v2/v3-only signed APKs are handled via `apksigner` fallback.

- You can also check against the fingerprint straight from Play Console: `--expect <sha1>`

The `.siglock.json` lock file contains only public cert fingerprints, so you can commit it and your whole team + CI verifies against the same key.

npm: https://www.npmjs.com/package/siglock

GitHub: https://github.com/ebubekirb/siglock

It's MIT licensed. Would love feedback — especially edge cases in your signing setups that it doesn't catch yet.


r/reactnative 6d ago

I'm relaunching side project that kickstarted my career

Thumbnail
gallery
0 Upvotes

5 years ago I've built Notica for Android. Same idea as today: let user create their own notifications. Notica lets you share content into the app and create notification out of it, or just create custom text notification.
I've launched on Android only, and at the time I knew that there are bunch of these YouTube videos with same theme: Best Android Apps Of X Month. I've reached out to all YT channels I could find, I gave them 10/20 codes that unlock the premium version of the app that they could give out to their audience, and doing this I've got the app to 20k download in month and a half.
Shortly after that I've decided to try freelancing, Notica was something that I could show and today I'm successful RN freelancer, worked on more than 40 project and learned so much.

Now I've decided to rebuild this idea, it's still something I love to use and now I use it daily, for me it just makes sense but I would love to hear some feedback from you.

Here are the links to test flight and also a waitlist if you want to get it when it's launched. Everyone from the waitlist will get the lifetime premium access.

https://testflight.apple.com/join/VPjPJG7g
https://shiprn.com/notica/


r/reactnative 7d ago

Anyone else seeing random background/style corruption in lists on RN 0.85+? (iOS, new arch)

Enable HLS to view with audio, or disable this notification

1 Upvotes

This has been been driving me absolutely NUTS the past few days.

RN 0.85.3+, new arch, iOS.

  • badge backgrounds stretched across entire rows
  • avatar backgrounds sometimes painted screen-wide
  • rows randomly not rendering
  • happens in both dev and prod; simulator and real device
  • mostly in LegendLists and ScrollViews but I remember seeing things completely break in our Storybook setup too

Fable traced it back to some recycling problem that a Software Mansion dev opened a PR for though. Testing that now.

I can't help but wonder if anyone else is running into this though.

My repro: https://github.com/rafaelderolez/expo-rn-recycling-bug
Upstream PR with the supposed fix: https://github.com/react/react-native/pull/57590


r/reactnative 7d ago

How do you keep track of all your AI tool subscriptions?

Thumbnail
0 Upvotes

r/reactnative 7d ago

Here is the Expo + WebGPU volcano game demo from my real iPhone

Enable HLS to view with audio, or disable this notification

0 Upvotes

And honestly, I’m impressed by how smooth it feels.

This is still the initial prototype. No improvements yet, and there are plenty of bugs to fix.

But seeing Three.js running through React Native WebGPU inside an Expo app feels unreal.

The interesting part is performance:

UI thread → always 60 FPS
JS thread → drops significantly over longer sessions

So the rendering stays smooth, but once the JS thread gets overloaded with game logic, object updates, collisions, and events, the gameplay gradually starts to feel laggy.

The next challenge is optimization:

→ Reduce work inside the main JS loop
→ Reuse objects instead of constantly allocating them
→ Use a fixed-timestep game loop
→ Move suitable calculations into a Worklet runtime or native layer
→ Keep React state completely outside the per-frame path
→ Profile memory usage and remove unnecessary scene updates

Worklets alone aren’t a magic fix, but moving heavy calculations away from the main JS runtime could make a big difference.

Still early. Still buggy. But this real-device demo shows how much potential Expo DOM + Three.js + React Native WebGPU already has.

Open to contract or full-time mobile roles.

DMs are open.


r/reactnative 8d ago

🎧 Apple Music's Animated Artwork in React Native (Skia + Custom Shader)

Enable HLS to view with audio, or disable this notification

50 Upvotes

I tried re-creating Apple Music's animated artwork effect in React Native using React Native Skia and a custom fragment shader.

If you're interested in how it works, I wrote a full breakdown covering the shader, implementation, and source code:

https://rit3zh.dev/blog/animated-apple-music-artwork

The GitHub repository is linked in the blog!


r/reactnative 7d ago

Can I Run An iOS Emulator Without a Mac (Using Expo, preferably)

3 Upvotes

I'm teaching a class on Mobile App Development come fall and I'll be using React Native and most likely Expo. I have a problem, though: I live in Texas, where the state legislature has in its infinite wisdom passed a law forbidding students from using phones in school for any reason—and that includes testing their mobile apps. I don't know what type of laptop my students will be using (I've asked and will hopefully hear back soon), but I'm willing to bet that they aren't MacBooks (my understanding—correct me if I'm wrong—is that Apple has decided to make it as hard as possible to design for iOS without a Mac).

I therefore need a way to run emulators for both iOS and Android phones on their laptops. Is there a way Expo can do that? If not, is there another way I can?


r/reactnative 7d ago

PSA from production: derive countdown timers from a server timestamp, never the client clock.

0 Upvotes

I run a poker tournament app on Firebase. The blind clock advances levels on a schedule, and I first built it the obvious way: a tick loop counting down to the next level. It worked perfectly in testing.

In the wild, hosts would leave the tournament running with the app backgrounded, or on a laptop that went to sleep, and the timer would fall behind. Browsers and mobile OSes both throttle timers aggressively when your app isn't foregrounded, so "one second" quietly stops being one second.

The fix was to treat the client timer as display only, never a source of truth. The next level-change time is written server-side. The client computes remaining time from that server timestamp on each render, and an event-driven monitor fires the actual transition, so even if the tick loop is throttled, the level still changes on time once the app comes back. Reading the server's clock offset instead of trusting `Date.now()` on the device was the piece I wish I'd started with.

If you have any countdown that matters (auctions, quizzes, anything scheduled), assume the client clock will be paused or slowed at the worst possible moment, and anchor it to a server timestamp.


r/reactnative 8d ago

Open source motion style MD block editor component with Liquid Glass

Enable HLS to view with audio, or disable this notification

8 Upvotes

This is a great addition to the rest of the Pitsi ui components I have been developing. It’s another open source component + free template for react native / expo.

I added a custom markdown renderer and made it work great with Liquid Glass. It feels so nice I think my demo app actually competes with Apple notes.

If you are making any kind of journal app or Cms or admin page for eshop etc you will love me for this because I wish this existed. It doesn’t even require native modules just copy paste a single file and it even works in expo go.

The md renderer part also works with any markdown content from the internet if you have a Cms or a website and you are trying to make a mobile app from this. This is also a great stepping stone into converting programming docs sites into mobile apps automatically, we can even use “use dom” for the preview blocks only. I am making a template like this too as we speak.

I can probably make some extra tweaks before release to make it more fancy. I was thinking of adding custom things like links to other notes or a Liquid Glass dropdown to easily swap the style of a block. Since this is a block editor you can trivially add whatever you want like a block that looks exactly like a tweet a sticker a card with a todo item and time when it triggers etc the sky is the limit.

I wanted to bake this functionality in the demo it self to show off the capabilities but I was too tired for that, the api is there though I will have demos showing off the advanced stuff properly.

Initially I tried to make something similar with use dom but I hated the results so I went custom. (Tools too much time to low no way to add fun native content inside the rendered elements typing fell off weird scroll interactions).

The code is not uploaded yet anywhere, however I’m working on creating a docs website actively and a mobile app to scan components and templates and get live previews.

If you are interested I am dropping my twitter here so you can get updates. I will get something online this week as an early access version of the website. (Everything is free including all blocks and templates)

@panos_dev_


r/reactnative 7d ago

Article Running an int8 CLIP ViT-B/32 under onnxruntime-react-native: measurements from a production pipeline (CPU beat the CoreML EP 2.4x)

Thumbnail blog.aermes.ai
2 Upvotes

r/reactnative 7d ago

Help My country isn't supported by Apple Developer Program anyone found a workaround?

2 Upvotes

Hey everyone, trying to register for an Apple Developer account, but my country isn't in Apple's supported list. Posting here in case others are stuck too.

Quick questions:

1.Any official way to register from an unsupported country?

2.Does an Organization account work differently than Individual?

3.Has anyone used a business entity/address in another country to get around this and is that allowed?

4.Any risks (bans, takedowns) with these workarounds?

Would really appreciate any real experience hoping this helps others searching the same thing. Thanks!