
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
wix-react-native-contacts
Advanced tools
A react native module to allow access to user contacts on a mobile device.
Supports both iOS and Android. The iOS version uses the AddressBook API or the new Contacts API on iOS>=9.
getAuthorizationStatus (iOS only)
Retrieves the current authorization status to access contact data. Based upon the access, the application could display or hide its UI elements that would access any Contacts API Callback Returns the authorization status. The value is from the ContactsManagerAuthorizationStatus enum
requestAuthorization (iOS only)
Request access to the user's contacts. Users are able to grant or deny access to contact data on a per-application basis. The user will only be prompted the first time access is requested; Callback Returns the authorization status. The value is from the ContactsManagerAuthorizationStatus enum.
getContactID
Retrieves the contact ID of a contact with the requested phone number. If there is more than one contact with this number, the first one will be retrieved. Callback Returns with an error message (if an error occured) and the contactID. In case of a error, contactID value will be kUnknownContactID
addNewContact
Adds a new contact to the user's contacts. Callback Returns with an error message (if an error occured) and the contactID. In case of a error, contactID value will be kUnknownContactID
npm install wix-react-native-contactsContacts.framework, AddressBook.frameworknpm install wix-react-native-contactsandroid/setting.gradle...
include ':wix-react-native-contacts'
project(':wix-react-native-contacts').projectDir = new File(settingsDir, '../node_modules/wix-react-native-contacts/android')
android/app/build.gradle...
dependencies {
...
compile project(':wix-react-native-contacts')
}
import com.wix.reactnativecontacts.ReactNativeContacts; // <------ ADD ME
public class MainActivity extends Activity implements DefaultHardwareBackBtnHandler {
......
mReactInstanceManager = ReactInstanceManager.builder()
.setApplication(getApplication())
.setBundleAssetName("index.android.bundle")
.setJSMainModuleName("index.android")
.addPackage(new MainReactPackage())
.addPackage(new ReactNativeContacts()) // <------ ADD ME
.setUseDeveloperSupport(BuildConfig.DEBUG)
.setInitialLifecycleState(LifecycleState.RESUMED)
.build();
......
}
...
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
...
First make sure to requier the ContactsManager like so:
var ContactsManager = React.NativeModules.ContactsManager;
ContactsManager.getAuthorizationStatus((status) => {
this.setState({
authStatus: status,
authChecked: true
});
})
ContactsManager.requestAuthorization((status) => {
this.setState({ authStatus: status });
})
var newContact = {
firstName: "Artal",
middleName: "middle",
lastName: "Druk",
phoneNumbers: [{
label: ContactsManager.CreateContactMobilePhoneLabel,
number: "050-1234567",
}],
emailAddresses: [{
label: "my email label",
email: "someone@wix.com",
}],
}
ContactsManager.addNewContact(newContact, (error, contactID) => {
var alertTitle = error ? "Error" : "Success";
var alertMessage = error ? error : "Contact added. New contact ID: " + contactID;
this.showAlert(alertTitle, alertMessage);
})
ContactsManager.getContactID("050-1234567", (error, contactID) => {
var alertTitle = error ? "Error" : "Success";
var alertMessage = error ? error : "Contact ID: " + contactID;
if (contactID === ContactsManager.UnknownContactID) {
alertMessage = "Contact not found";
}
this.showAlert(alertTitle, alertMessage);
})
You can see a full working example here.
FAQs
Wix React Native Contacts
We found that wix-react-native-contacts demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.