SQLCipher support for React native applications

We are developing a React native application that supports android, iOS and Windows(UWP) platforms.
We are already users of SQLCipher licensed edition for native android and UWP for full database encryption. Would like to understand if SQLCipher does support ReactNative in order to support full database encryption for all three android, iOS and Windows(UWP) platforms.

Hello @Vidya - We don’t have a special package for React Native at this time. However, we do offer native SQLCipher for iOS, Android, and UWP packages which may be usable in conjunction with third party binding projects. For example, you may be able to use React Native with the native SQLCipher packages for those platforms by substituting the libraries we provide with a separate SQLite data access library. If you’d like to try this out yourself, we offer free, no-risk trials of SQLCipher Commercial edition here:

https://www.zetetic.net/sqlcipher/trial/

Alternately, if you are interested in an officially supported drop in package for React Native, we offer development and customization of packages under our SQLCipher enterprise program. This would be at additional cost, but it might be able to provide you with a more turn-key solution. If you’re interested in this option, please feel free to contact us at sales@zetetic.net with the details about your requirements and we can discuss it further.

Would like to understand a bit more on the turn-key solution that you offer with the enterprise program. Will that in-turn going to bridge with native sqlchiper libraries of iOS, android and windows ?
And if so, how effective it will be ?
Ours, being an offline application, would have numerous and frequent database transactions throughout the application… so how effective it will be to go with native bridging mechanism in this case? Will there be any performance implications ?

Hello @Vidya, under the Enterprise Program, we’d be developing a customized integration for this which would do the bridging and be installable without having to cobble together a combination of projects and packages from different maintainers. That said, no matter what option is used, a native bridge is required because SQLCipher libraries are only distributed as native code. Thus, it has to be wrapped for access from a higher-level API interface. Thankfully the effectiveness of this sort of integration is well established, many of our commercial and enterprise packages (e.g. for .NET, Cordova, JDBC, Android) utilize a bridge of some sort to invoke the native SQLCipher library functions with excellent performance.

Hi @sjlombardo, Thanks, that helps!
Said that, will that be correct to say that - with enterprise edition, there will be a single react-native package that will in-turn support all the 3 mobile platforms - iOS, android and UWP ?
Also, is the final package ORM supported ?

Hello @Vidya - that would be the idea, that a single package would be usable across platforms, with bundled native implementations for each OS and architecture. Again, this package would be a custom build that doesn’t exist already. Since there would be an engineering effort involved there could be adjustments/limitations based on packaging capabilities that we can’t ascertain ahead of time.

Is there a particular ORM you are interested in?

Thanks @sjlombardo, we will go ahead to contact the sales to take it further.

Meanwhile, regarding the ORM support, we don’t have anything particular in mind, but just currently looking at this one, typeorm