npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

interswitch-card-tokenization

v1.0.0

Published

Interswitch Card Tokenization SDK

Readme

Card Tokenization SDK React Native

Card Tokenization SDK React Native

A React Native wrapper for the Card Tokenization SDK enabling secure card tokenization integration in React Native applications.

Overview

This library is built using Turbo Native Modules (the new React Native architecture), ensuring highly efficient, synchronous data fetching and type-safe communication between JavaScript and native code.

Under the hood, it bridges the native platform implementations seamlessly:

  • android: Directly integrates the native Android implementation of the Card Tokenization SDK.
  • ios: Wraps the native .xcframework distribution of the SDK.

Prerequisites

Android

  • Minimum SDK (minSdkVersion): 24 (or whatever version your underlying SDK requires)
  • Compile SDK (compileSdkVersion): 36 or higher
  • Kotlin Version (kotlinVersion): 2.0.21 or higher
  • Java / Gradle: Java 11+ and an updated Gradle wrapper matching your React Native version.

iOS

  • Deployment Target: iOS 13.0 or higher
  • CocoaPods: 1.11.0 or higher
  • Xcode: Version 16.0+ (Required for handling modern .xcframework distributions)

Running the Example App

The project includes an example/ directory, which is a pre-configured React Native application that demonstrates how to implement and test the Card Tokenization SDK.

Follow these steps to get the example app running locally:

1. Prerequisites for Running the Example

Make sure you have installed the root project dependencies first, as the example app links directly to the root library.

# Clone the repository (if you haven't already)
git clone <your-repo-url>
cd <your-repo-folder>

# Install root dependencies
yarn install # or npm install

2. Configure Native Dependencies

For Android: The example app will automatically resolve the root library via React Native's autolinking. Ensure your Android device/emulator is running and connected (adb devices).

For iOS: Navigate to the iOS folder inside the example app and install the pods (including the .xcframework dependencies).

cd example/ios
pod install
cd ..

3. Start the Metro Bundler

Start the React Native packager from the root or the example directory:

yarn example start
# or npm run example start

4. Build and Run the App

Open a new terminal window and run the platform of your choice:

Android

yarn example android
# or npm run example android

iOS

yarn example ios
# or npm run example ios

5. Testing Tokenization workflows

Once the example app is running on your device or emulator:

Configure Credentials: Open the example app's main file (e.g., example/src/App.tsx) and update the initialization block with your Interswitch sandbox configurations (Client ID, Secret, Merchant ID).

Trigger Tokenization: Use the provided UI inputs to input a test card.

Check logs: Monitor your terminal or native IDE console (Logcat for Android / Xcode Console for iOS) to verify the returned tokens and response payloads from the Turbo Native Module bridging layer.

Publishing and Updating the NPM Package

Follow these steps to package and release the library to the NPM registry.

1. Preparation & Authentication

Before publishing, ensure you are logged into your NPM account via the CLI. If you haven't logged in yet, run:

npm login

2. Verify files to be Published

To prevent bloating your NPM package, ensure your .npmignore or the files array in package.json is configured properly.

  • Your package must include:

    • src/ (JavaScript/TypeScript source files)

    • android/ (Android build scripts and native code bridging the SDK)

    • ios/ (iOS source files and the .xcframework or Podspec)

    • lib/ or dist/ (The compiled JavaScript output)

You can verify exactly what will be uploaded to NPM without actually publishing by running:

npm pack

This generates a .tgz file. Extract it to verify all native and JS code are present.

3. Publishing a New Package (First Time)

If this is the very first release of the package:

  1. Build the TypeScript/JavaScript distribution files (if your setup uses a build step):
yarn build # or npm run build
  1. Publish to the registry:
npm publish --access public

4. Updating an Existing Package

When making changes, fixing bugs, or adding features, use the following workflow to update the package version:

Step A: Commit your changes Ensure your working directory is clean and all edits for the version are committed to Git.

Step B: Bump the version Use npm version to automatically update the version in package.json and create a matching Git release tag. Choose the appropriate bump according to SemVer (Semantic Versioning):

# For bug fixes / minor patches (e.g., 1.0.0 -> 1.0.1)
npm version patch
# For new features that are backwards-compatible (e.g., 1.0.0 -> 1.1.0)
npm version minor
# For breaking changes / major architectural updates (e.g., 1.0.0 -> 2.0.0)
npm version major

Step C: Publish the update Push your compiled assets and new version to the registry:

yarn build # ensure the latest TS compilation is included
npm publish

Made with create-react-native-library