@circle-fin/w3s-pw-react-native-sdk
v1.1.1
Published
React Native SDK for Circle Programmable Wallet
Downloads
282
Readme
@circle-fin/w3s-pw-react-native-sdk
React Native SDK for Circle Programmable Wallet
Install NVM
Install Node Version Manager to use different versions of node and npm easily.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
Note: See nvm repo for the most updated instruction.
Authenticate the npm registry
Create a Personal Access Token in your GitHub setting. Use Configure SSO
button next to your created token to authorize circlefin
organization. More instruction can be found here. Then, log in to npm
on your terminal.
npm login --scope=@OWNER --registry=https://registry.npmjs.org
This will ask you to submit your GitHub personal access token as below. Check below links for creating GitHub PAT:
npm notice Log in on https://registry.npmjs.org/
Username: <insert your GitHub username here>
Password: <insert your GitHub personal access token here>
Enable the New Architecture
The SDK is supporting both React Native old and new architectures. You can enable the new architecture by changing the project setting.
Android
Update the android/gradle.properties
file as follows:
newArchEnabled=true
iOS
Reinstall your pods by running pod install with the right flag:
RCT_NEW_ARCH_ENABLED=1 bundle exec pod install
Installation
Using yarn
yarn add @circle-fin/w3s-pw-react-native-sdk
Using npm
npm install @circle-fin/w3s-pw-react-native-sdk
Link Native Dependencies
Android
Add the maven repository to your android/build.gradle
. It's suggested that load settings from local.properties
:
repositories {
...
maven {
Properties properties = new Properties()
// Load local.properties.
properties.load(new File(rootDir.absolutePath + "/local.properties").newDataInputStream())
url properties.getProperty('pwsdk.maven.url')
credentials {
username properties.getProperty('pwsdk.maven.username')
password properties.getProperty('pwsdk.maven.password')
}
}
}
Add the maven setting values in local.properties
file.
pwsdk.maven.url=https://maven.pkg.github.com/circlefin/w3s-android-sdk
pwsdk.maven.username=<GITHUB_USERNAME>
# Fine-grained personal access tokens or classic with package write permission.
pwsdk.maven.password=<GITHUB_PAT>
iOS
Add below links at tne top of ios/Podfile
:
source 'https://github.com/circlefin/w3s-ios-sdk.git'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '13.4'
Declare dynamic link as below:
target 'W3sSampleWallet' do
use_frameworks!
end
And add the following post_install
hook:
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings["ONLY_ACTIVE_ARCH"] = "NO"
config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES'
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
end
end
end
Run the Example
Android
yarn example android
iOS
yarn example ios