https://github.com/naandalist/cppreactnative
Mobile is inherently polyglot. What if React Native needs C++ module?
https://github.com/naandalist/cppreactnative
Last synced: 10 months ago
JSON representation
Mobile is inherently polyglot. What if React Native needs C++ module?
- Host: GitHub
- URL: https://github.com/naandalist/cppreactnative
- Owner: Naandalist
- Created: 2020-12-08T15:46:39.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2021-01-13T02:55:13.000Z (almost 5 years ago)
- Last Synced: 2024-12-30T21:25:28.101Z (about 1 year ago)
- Language: Java
- Homepage:
- Size: 279 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Sometimes React Native needs C++ Module
This repository is an upgraded version of [react-native-c-plus-plus](https://github.com/ryardley/react-native-c-plus-plus) using [React Native version 0.63](https://reactnative.dev/docs/getting-started) after reading these the medium series:
* [Why React Native needs C++](https://medium.com/p/fb30b46c2468)
* [Talking like a React Native](https://medium.com/p/f245e5d919dd)
* [Mobile to C++ with Djinni](https://medium.com/p/1c993757b68f)
* [Connect React Native to C++](https://medium.com/p/a2809b92095)
# This repository requires Djinni
Djinni is a tool for generating cross-language type declarations and interface bindings. It's
designed to connect C++ with either Java or Objective-C. Python support is available in an
experimental version on the `python` branch.
Djinni can be used to interface cross-platform C++ library code with platform-specific Java and
Objective-C on Android and iOS. We announced Djinni at CppCon 2014. You can see the
[slides](https://bit.ly/djinnitalk) and [video](https://bit.ly/djinnivideo). For more info about
Djinni and how others are using it, check out the community links at the end of this document.
## Features of Djinni
- Generates parallel C++, Java and Objective-C type definitions from a single interface
description file.
- Supports the intersection of the three core languages' primitive types, and user-defined
enums, records, and interfaces.
- Generates interface code allowing bidirectional calls between C++ and Java (with JNI) or
Objective-C (with Objective-C++).
- Autogenerate comparator functions (equality, ordering) on data types.
## Author
- Naandalist