{"id":20037412,"url":"https://github.com/animo/indy-sdk-expo-plugin","last_synced_at":"2025-05-05T06:30:54.953Z","repository":{"id":43184641,"uuid":"511114592","full_name":"animo/indy-sdk-expo-plugin","owner":"animo","description":"Config plugin to auto configure Indy SDK for iOS \u0026 Android","archived":false,"fork":false,"pushed_at":"2023-08-14T09:40:08.000Z","size":68154,"stargazers_count":8,"open_issues_count":4,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-04-26T09:21:47.117Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/animo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2022-07-06T11:46:21.000Z","updated_at":"2023-08-14T08:29:28.000Z","dependencies_parsed_at":"2023-11-30T04:44:11.555Z","dependency_job_id":null,"html_url":"https://github.com/animo/indy-sdk-expo-plugin","commit_stats":{"total_commits":16,"total_committers":5,"mean_commits":3.2,"dds":0.4375,"last_synced_commit":"d8479dcf8d379702d9d0a989757be1043effe999"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/animo%2Findy-sdk-expo-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/animo%2Findy-sdk-expo-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/animo%2Findy-sdk-expo-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/animo%2Findy-sdk-expo-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/animo","download_url":"https://codeload.github.com/animo/indy-sdk-expo-plugin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252451375,"owners_count":21749927,"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-13T10:19:23.353Z","updated_at":"2025-05-05T06:30:49.938Z","avatar_url":"https://github.com/animo.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cpicture\u003e\n   \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://res.cloudinary.com/animo-solutions/image/upload/v1656578320/animo-logo-light-no-text_ok9auy.svg\"\u003e\n   \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://res.cloudinary.com/animo-solutions/image/upload/v1656578320/animo-logo-dark-no-text_fqqdq9.svg\"\u003e\n   \u003cimg alt=\"Animo Logo\" height=\"200px\" /\u003e\n  \u003c/picture\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\" \u003e\u003cb\u003eIndy SDK Expo Plugin\u003c/b\u003e\u003c/h1\u003e\n\n\u003ch4 align=\"center\"\u003ePowered by \u0026nbsp; \n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://res.cloudinary.com/animo-solutions/image/upload/v1656579715/animo-logo-light-text_cma2yo.svg\"\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://res.cloudinary.com/animo-solutions/image/upload/v1656579715/animo-logo-dark-text_uccvqa.svg\"\u003e\n    \u003cimg alt=\"Animo Logo\" height=\"12px\" /\u003e\n  \u003c/picture\u003e\n\u003c/h4\u003e\u003cbr\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://typescriptlang.org\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://yarnpkg.com\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/yarn-workspaces-2188b6\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://www.npmjs.com/package/@animo-id/indy-sdk-expo-plugin\"\u003e\n    \u003cimg src=\"https://img.shields.io/npm/v/@animo-id/indy-sdk-expo-plugin\" /\u003e\n  \u003c/a\u003e\n  \u003ca\n    href=\"https://raw.githubusercontent.com/animo/indy-sdk-expo-plugin/main/LICENSE\"\n    \u003e\u003cimg\n      alt=\"License\"\n      src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg\"\n  /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#getting-started\"\u003eGetting started\u003c/a\u003e \n  \u0026nbsp;|\u0026nbsp;\n  \u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e \n  \u0026nbsp;|\u0026nbsp;\n  \u003ca href=\"#contributing\"\u003eLicense\u003c/a\u003e \n\u003c/p\u003e\n\n---\n\nAn [Expo Config Plugin](https://docs.expo.dev/guides/config-plugins/) to automatically set up and configure the Indy SDK for iOS \u0026 Android in React Native.\n\n- 🧽 Clean and minimal repository as you don't need to commit your `ios` and `android` directories.\n- ⚡️ Super quick setup of the Indy SDK for iOS \u0026 Android in React Native.\n- 💰 Save hours of time by leveraging Expo's development tools and Expo Application Service.\n\nWith the Indy SDK Expo Plugin you can leverage the `expo prebuild` command to generate the `ios` and `android` directories. This removes the need to following the tedious instructions for setting up the Indy SDK for react native, and means you don't need to commit the `ios` and `android` directories.\n\n## Version Support\n\nThe Indy SDK Expo Plugin is developed against specific versions of Indy SDK React Native and Expo. While there is a chance of it working with other versions, currently the following versions are supported:\n\n| Indy SDK Expo Plugin | Indy SDK React Native | Expo SDK |\n| -------------------- | --------------------- | -------- |\n| 0.1.0                | 0.2.2                 | 45       |\n| 0.2.0                | ^0.3.0                | 47       |\n| 0.3.0                | ^0.3.0                | 48       |\n| 0.3.0                | ^0.4.0                | 49       |\n\n## Getting Started\n\nInstall the plugin using the following command:\n\n```sh\n# yarn\nyarn add --dev @animo-id/indy-sdk-expo-plugin\n\n# npm\nnpm install --save-dev @animo-id/indy-sdk-expo-plugin\n```\n\nThen add the plugin to your Expo app config (`app.json`, `app.config.json` or `app.config.js`) `plugins` array:\n\n```json\n{\n  \"expo\": {\n    \"plugins\": [\"@animo-id/indy-sdk-expo-plugin\"]\n  }\n}\n```\n\nBecause the `Indy.framework` is built without bitcode enabled, we must disable bitcode for the application. We can do this by setting the `expo.ios.bitcode` property to `false` in the Expo config\n\n```json\n{\n  \"expo\": {\n    \"ios\": {\n      \"bitcode\": false\n    }\n  }\n}\n```\n\n\u003e NOTE: the `expo` top level key is only needed in `app.json`. In `app.config.json`, `app.config.js` and `app.config.ts` the top level expo key is not present anymore.\n\nAnd lastly, prebuild the application so the indy-sdk can be added as native dependency (If you aren't making any manual modification to the iOS and Android directories you can add them to the gitignore of your project and generate them on demand):\n\n```sh\n# yarn\nyarn expo prebuild\n\n# npm\nnpx expo prebuild\n```\n\nThat's it, you now have Indy SDK configured for your iOS and Android project. If you're using this plugin with [Aries Framework JavaScript](https://github.com/hyperledger/aries-framework-javascript) you will still need to follow the other setup steps, but you can skip the [Installation](https://aries.js.org/guides/getting-started/installation/react-native) for React Native.\n\n## Test if everything works\n\nAdd the `indy-sdk-react-native` to your project:\n\n```sh\n# yarn\nyarn add indy-sdk-react-native\n\n# npm\nnpm install -s indy-sdk-react-native\n```\n\nReplace your `app.js` with the following:\n\n```javascript\nimport { Button, StyleSheet, View } from 'react-native'\nimport Indy from 'indy-sdk-react-native'\n\nexport default function app() {\n  const testIndy = () =\u003e {\n    Indy.createWallet({ id: 'sample-id' }, { key: 'sample-key' })\n      .then(() =\u003e console.log('Success!'))\n      .catch((e) =\u003e console.error(`An error occurred! ${e}`))\n  }\n\n  return (\n    \u003cView style={styles.container}\u003e\n      \u003cButton onPress={testIndy} title=\"test indy\" /\u003e\n    \u003c/View\u003e\n  )\n}\n\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1,\n    backgroundColor: '#fff',\n    alignItems: 'center',\n    justifyContent: 'center',\n  },\n})\n```\n\n## Contributing\n\nIs there something you'd like to fix or add? Great, we love community\ncontributions! To get involved, please follow our [contribution guidelines](./CONTRIBUTING.md).\n\n## License\n\nIndy SDK Plugin Expo is licensed under the [Apache License Version 2.0 (Apache-2.0)](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanimo%2Findy-sdk-expo-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanimo%2Findy-sdk-expo-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanimo%2Findy-sdk-expo-plugin/lists"}