PluginBench
Skill
Pass
Audit score 90

create-react-native-library

callstackincubator/agent-skills

Scaffold React Native libraries with native module and UI component support.

What is create-react-native-library?

This skill scaffolds React Native libraries using create-react-native-library, supporting standalone npm-publishable libraries or local native modules within existing apps. Use it when building React Native libraries, wrapping native SDKs, or adding native functionality to React Native projects.

  • Scaffold standalone React Native libraries ready for npm publication
  • Create local native modules and views within existing React Native apps
  • Generate Turbo Module configurations for modern native module development
  • Support multiple native languages (Kotlin, Objective-C) and example app types
  • Provide autolinking setup for seamless native module integration

How to install create-react-native-library

npx skills add https://github.com/callstackincubator/agent-skills --skill create-react-native-library
Prerequisites
  • Node.js and npm installed
  • Existing React Native project (for local library option) or ability to create new projects
Claude Code
Cursor
Windsurf
Cline

How to use create-react-native-library

  1. 1.Run npx create-react-native-library@latest with desired options (--help to see all flags)
  2. 2.Choose between scaffold-library flow (new npm-publishable library) or local-library flow (add to existing app)
  3. 3.Specify library type (turbo-module or standard), native languages (kotlin-objc), and example app type (expo)
  4. 4.Follow the referenced scaffold-library.md or local-library.md documentation for implementation steps
  5. 5.Configure native code and JavaScript bindings according to your use case

Use cases

Good for
  • Creating a new React Native library with Turbo Module support and Expo example app
  • Adding a native module to an existing React Native app to expose native functionality
  • Wrapping third-party native SDKs and exposing them to JavaScript
  • Building custom native UI components that render native views in React Native
  • Setting up a multi-language native module (Kotlin for Android, Objective-C for iOS)
Who it's for
  • React Native library developers
  • Mobile developers building native modules
  • Teams wrapping native SDKs for React Native
  • Developers adding native functionality to existing React Native apps

create-react-native-library FAQ

What's the difference between scaffold-library and local-library flows?

scaffold-library creates a new standalone library ready for npm publication with an example app; local-library adds a native module directly to an existing React Native app using autolinking.

What native languages are supported?

The skill supports Kotlin for Android and Objective-C for iOS, specified via the --languages flag.

Can I use this for JS-only libraries?

Yes, create-react-native-library supports JS-only libraries that may depend on other React Native libraries, not just native modules.

What is a Turbo Module?

Turbo Modules are the modern native module system for React Native, providing better performance and type safety compared to legacy native modules.

Do I need to manually link native modules?

No, the local-library flow uses autolinking to automatically link native modules to your React Native app.

Full instructions (SKILL.md)

Source of truth, from callstackincubator/agent-skills.


name: create-react-native-library description: Scaffolds React Native libraries with create-react-native-library for standalone libraries or local native modules and views. Use when creating or working on React Native libraries or adding native functionality in an existing app. license: MIT

Create React Native Library

Overview

Use this skill to scaffold a standalone React Native library or a local library inside an existing app, then continue with the correct implementation docs.

Examples:

  • JS-only library that may use other React Native libraries
  • Native modules that expose native functionality to JavaScript
  • Native UI components that render native views in React Native

Choose one flow first:

When to Apply

Use this skill when:

  • Creating or working on a React Native library with create-react-native-library
  • Creating a native module or view in an existing app
  • Wrapping native SDKs and exposing them to React Native

Quick Reference

# Inspect current options before scaffolding
npx create-react-native-library@latest --help

# Scaffold a library with turbo modules and the Expo example app
npx create-react-native-library@latest awesome-library \
  --no-interactive \
  --yes \
  --description "A brief description of the library" \
  --type turbo-module \
  --languages kotlin-objc \
  --example expo

# Scaffold a local Turbo Module inside an existing app
cd MyApp
npx create-react-native-library@latest awesome-library \
  --local \
  --no-interactive \
  --yes \
  --description "A brief description of the library" \
  --type turbo-module \
  --languages kotlin-objc

References

FileDescription
scaffold-library.mdScaffold a new library and default to the Expo example
local-library.mdAdd a local library to an existing app with autolinking

Problem -> Skill Mapping

ProblemStart With
Need a new library scaffoldscaffold-library
Need to add a local native library to an applocal-library