Nosmai  Effects Nosmai  Moderation Nosmai Try-ons coming soon
Docs menu React Native
How-to guide

Bundle an Asset Store filter in React Native

Package .nosmai resources in the native iOS and Android projects, then discover and apply them through the React Native API.

Platform React Native SDK version 1.0.0 Updated Aug 19, 2026 Time 7 min

Prerequisites

Add native resources

React Native does not apply a Metro require() value. Package the resources in both native projects:

  • iOS: nosmai_filters/<name>/ in Copy Bundle Resources
  • Android: app/src/main/assets/Nosmai_Filters/<name>/

Each folder contains the .nosmai file and matching manifest and preview files.

Discover and apply it

const packages = await NosmaiCameraSdk.getLocalFilters();
const selected = packages.find((item) => item.name === 'heart_face');

if (selected) {
  await NosmaiCameraSdk.applyEffect(selected.path);
}

Do not pass a Metro asset number, directory, remote URL, or guessed path.

Verify it worked

Build both native targets, open the same screen, and confirm the package is discovered and applied on iOS and Android.

Common errors

ErrorFix
E_INVALID_PACKAGE_PATHUse the path returned by getLocalFilters
E_EFFECT_APPLYVerify package integrity and native SDK compatibility
Works on only one platformAdd the resources to the missing native target

Next steps

References

Was this page helpful?

Your response helps us prioritize documentation improvements.

Nosmai

An AR and AI company. Founded on the idea that the next decade of software will be visual, and that the tools for it should be within reach of anyone building.

Newsletter

Product updates and release notes. No spam.

© 2026 nosmai, inc · all rights reserved