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 🙏

© 2024 – Pkg Stats / Ryan Hefner

@animo-id/indy-sdk-expo-plugin

v0.4.0

Published

Config plugin to auto configure Indy SDK on prebuild

Downloads

10

Readme


An Expo Config Plugin to automatically set up and configure the Indy SDK for iOS & Android in React Native.

  • 🧽 Clean and minimal repository as you don't need to commit your ios and android directories.
  • ⚡️ Super quick setup of the Indy SDK for iOS & Android in React Native.
  • 💰 Save hours of time by leveraging Expo's development tools and Expo Application Service.

With 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.

Version Support

The 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:

| Indy SDK Expo Plugin | Indy SDK React Native | Expo SDK | | -------------------- | --------------------- | -------- | | 0.1.0 | 0.2.2 | 45 | | 0.2.0 | ^0.3.0 | 47 | | 0.3.0 | ^0.3.0 | 48 | | 0.3.0 | ^0.4.0 | 49 |

Getting Started

Install the plugin using the following command:

# yarn
yarn add --dev @animo-id/indy-sdk-expo-plugin

# npm
npm install --save-dev @animo-id/indy-sdk-expo-plugin

Then add the plugin to your Expo app config (app.json, app.config.json or app.config.js) plugins array:

{
  "expo": {
    "plugins": ["@animo-id/indy-sdk-expo-plugin"]
  }
}

Because 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

{
  "expo": {
    "ios": {
      "bitcode": false
    }
  }
}

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.

And 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):

# yarn
yarn expo prebuild

# npm
npx expo prebuild

That's it, you now have Indy SDK configured for your iOS and Android project. If you're using this plugin with Aries Framework JavaScript you will still need to follow the other setup steps, but you can skip the Installation for React Native.

Test if everything works

Add the indy-sdk-react-native to your project:

# yarn
yarn add indy-sdk-react-native

# npm
npm install -s indy-sdk-react-native

Replace your app.js with the following:

import { Button, StyleSheet, View } from 'react-native'
import Indy from 'indy-sdk-react-native'

export default function app() {
  const testIndy = () => {
    Indy.createWallet({ id: 'sample-id' }, { key: 'sample-key' })
      .then(() => console.log('Success!'))
      .catch((e) => console.error(`An error occurred! ${e}`))
  }

  return (
    <View style={styles.container}>
      <Button onPress={testIndy} title="test indy" />
    </View>
  )
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },
})

Contributing

Is there something you'd like to fix or add? Great, we love community contributions! To get involved, please follow our contribution guidelines.

License

Indy SDK Plugin Expo is licensed under the Apache License Version 2.0 (Apache-2.0).