{"id":18245030,"url":"https://github.com/edgeapp/react-native-zcash","last_synced_at":"2025-04-04T13:32:05.231Z","repository":{"id":38069659,"uuid":"217382138","full_name":"EdgeApp/react-native-zcash","owner":"EdgeApp","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-12T22:20:19.000Z","size":1230,"stargazers_count":4,"open_issues_count":20,"forks_count":3,"subscribers_count":11,"default_branch":"master","last_synced_at":"2024-04-13T22:57:59.127Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EdgeApp.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2019-10-24T19:42:18.000Z","updated_at":"2024-04-17T21:40:54.554Z","dependencies_parsed_at":"2024-02-13T21:30:31.432Z","dependency_job_id":"cd763045-f092-4afb-bfbf-52789612fc72","html_url":"https://github.com/EdgeApp/react-native-zcash","commit_stats":{"total_commits":201,"total_committers":8,"mean_commits":25.125,"dds":0.5074626865671642,"last_synced_commit":"0b2260173ac7f209fbe99323f631bddc5a49b7b5"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EdgeApp%2Freact-native-zcash","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EdgeApp%2Freact-native-zcash/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EdgeApp%2Freact-native-zcash/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EdgeApp%2Freact-native-zcash/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EdgeApp","download_url":"https://codeload.github.com/EdgeApp/react-native-zcash/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223144231,"owners_count":17094809,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-05T09:18:39.115Z","updated_at":"2024-11-05T09:18:39.840Z","avatar_url":"https://github.com/EdgeApp.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# react-native-zcash\n\nThis library packages the ZCashLightClientKit for use on React Native.\n\n## Usage\n\nFirst, add this library to your React Native app using NPM or Yarn, and run `pod install` as necessary to integrate it with your app's native code.\n\nIf you encounter errors during `pod install`, you may need to add the following code to the `target` section of your Podfile:\n\n```ruby\n# Zcash transitive dependencies:\npod 'CGRPCZlib', :modular_headers =\u003e true\npod 'CNIOAtomics', :modular_headers =\u003e true\npod 'CNIOBoringSSL', :modular_headers =\u003e true\npod 'CNIOBoringSSLShims', :modular_headers =\u003e true\npod 'CNIODarwin', :modular_headers =\u003e true\npod 'CNIOHTTPParser', :modular_headers =\u003e true\npod 'CNIOLinux', :modular_headers =\u003e true\npod 'CNIOWindows', :modular_headers =\u003e true\npod 'sqlite3', :modular_headers =\u003e true\n```\n\nOn the Android side, you may need to configure an explicit Kotlin version, so all your native dependencies will be compatible with one another. Simply define `kotlinVersion` in your `android/build.gradle` file:\n\n```groovy\nbuildscript {\n  ext {\n    kotlinVersion = '1.8.22'\n  }\n}\n```\n\n### API overview\n\n- `Tools`\n  - `deriveViewingKey`\n  - `getBirthdayHeight`\n  - `isValidAddress`\n- `makeSynchronizer`\n  - `start`\n  - `stop`\n  - `rescan`\n  - `getLatestNetworkHeight`\n  - `sendToAddress`\n  - `shieldFunds`\n  - `deriveUnifiedAddress`\n\n`Tools` contains methods that don't require a running synchronizer (with one exception, `isValidAddress` on Android which does requires any synchronizer connected to the requested network). In addition to the methods above, the following events can be subscribed to:\n\n- `BalanceEvent`- available and total transparent and shielded balances\n- `StatusEvent` - current synchronizer activity (`STOPPED`, `DISCONNECTED`, `SYNCING`, and `SYNCED`)\n- `TransactionEvent`- confirmed transactions\n- `UpdateEvent` - syncing progress and network height\n\n## Developing\n\nThis library relies on a large amount of native code from other repos. To integrate this code, you must run the following script before publishing this library to NPM:\n\n```sh\nnpm run update-sources\n```\n\nThis script will download ZCashLightClientKit and zcash-light-client-ffi, modify them for React Native, and integrate them with our wrapper code.\n\nThe `update-sources` script is also the place to make edits when upgrading any of the third-party dependencies.\n\nWe also have an `update-checkpoints` command that will connect to a node and generate fresh checkpoints based on the chain state.\n\n### Source Formatting\n\nInstall `ktlint` and `swift-format` using your package manager, such as `brew install ktlint swift-format`. Run `fix-swift` or `fix-kotlin` to format the native sources.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedgeapp%2Freact-native-zcash","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedgeapp%2Freact-native-zcash","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedgeapp%2Freact-native-zcash/lists"}