finds.dev← search

// the find

hyochan/react-native-nitro-sound

★ 953 · TypeScript · MIT · updated Jun 2026

react-native native module for audio recorder and player with nitromodule!

A React Native audio recording and playback library rebuilt on NitroModules — the new JSI-based native module system by mrousavy that eliminates bridge overhead. It's the successor to react-native-audio-recorder-player, which had 40k+ weekly downloads, so this has a real user base behind it rather than starting cold.

NitroModules gives you direct C++ JSI bindings instead of going through the async bridge, which matters for anything time-sensitive like audio progress updates at 50ms intervals. The API surface is sensible — singleton for simple cases, createSound() for multiple concurrent instances, useSound() hook for React components. TypeScript types are generated from the native spec via nitrogen, so the types actually match what the native layer expects rather than being hand-maintained guesses. Web platform support using MediaRecorder/Web Audio API is a genuine bonus for teams running react-native-web.

The repo is now explicitly AI-maintained — the README says day-to-day triage and bug fixes are handled by Claude on the author's behalf. That's an honest disclosure, but it means issues get triaged by an LLM that can't run the code or test on a device, which is exactly the environment where audio bugs live. Android minSdk 24 is a hard floor that cuts off about 3% of the global device market — fine for most, but worth knowing. Web recording is browser-dependent with no metering support and Blob URLs instead of file paths, so the web story is more 'it exists' than 'it works the same'. The v4.x shift to background threads for recording operations is a correctness improvement but it's a breaking change in behavior that existing code won't catch until something looks frozen.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →