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

@sfmc/react-native-sfmc-core

v1.0.1

Published

Core identity, event tracking, and logging for the Salesforce Marketing Cloud Unified Mobile SDK

Downloads

299

Readme

SFMC Core

Unified SFMC SDK core for React Native — identity, attributes, custom events, logging.

Installation

yarn add @sfmc/react-native-sfmc-core
# or
npm install @sfmc/react-native-sfmc-core

iOS:

cd ios && pod install

Android: no additional steps — Gradle autolinking discovers the module automatically.

Required SDK configuration

Usage

import { SFMCSdkModule } from '@sfmc/react-native-sfmc-core';
import type { SFMCSdkApi, SFMCEvent } from '@sfmc/react-native-sfmc-core';

const sfmc: SFMCSdkApi = await SFMCSdkModule.requestSdk();
sfmc.setProfileId('user-1234');
sfmc.setAttribute('email', '[email protected]');
const profileId = await sfmc.getProfileId();

// Custom event
sfmc.track({ objType: 'CustomEvent', name: 'app_open' });

// Cart event
sfmc.track({
  objType: 'CartEvent',
  subtype: 'add',
  lineItems: [{ catalogObjectType: 'Product', catalogObjectId: 'sku-1', quantity: 2, price: 9.99, currency: 'USD' }],
});

API

| Method | Return | Description | |--------|--------|-------------| | setProfileId(id) | void | Set profile/contact key | | getProfileId() | Promise<string \| null> | Get current profile ID | | setAttribute(key, value) | void | Set a single attribute | | setAttributes(attrs) | void | Set multiple attributes at once | | clearAttribute(key) | void | Remove an attribute | | clearAllAttributes() | void | Remove all attributes | | getAttributes() | Promise<object \| null> | Get all attributes | | setPartyIdentificationName(name) | void | Set party identification name | | setPartyIdentificationNumber(num) | void | Set party identification number | | setPartyIdentificationType(type) | void | Set party identification type | | getPartyIdentificationName() | Promise<string \| null> | Get party identification name | | getPartyIdentificationNumber() | Promise<string \| null> | Get party identification number | | getPartyIdentificationType() | Promise<string \| null> | Get party identification type | | track(event) | void | Track a structured event | | sendImmediate(event) | void | Send event immediately (bypasses batching) | | flush() | void | Flush pending analytics | | setLogging(level) | void | Set log level: 'DEBUG', 'WARN', 'ERROR', 'NONE' | | getSdkState() | Promise<object> | Get full SDK state as JSON object |

Notes

sfmc-core is the dependency root for every SFMC RN plugin. Other packages depend on it transitively — installing a product package (marketingcloudsdk or mobileappmessaging) auto-resolves this.

Versions

  • React Native: 0.85.1 (New Architecture mandatory)
  • Android: sfmcsdk 3.1.0
  • iOS: MarketingCloud-SFMCSdk 4.0.1

License

BSD 3-Clause. See LICENSE for details.