Further Reading¶
Other Djinni Forks¶
There is a number of other forks of the original dropbox/djinni out there. Make sure to check them out:
- Snapchat/djinni:
- about 5-10x faster string passing between Java and C++ (depending on string size)
- Javascript support via WASM
array<>
,outcome<>
& Protobuf type support- And a lot more! (Read more...)
- hiennguyenle/finn (Not maintained anymore):
- Support for
@deprecated
directive in the Djinni IDL - Extending records to inherit properties from a base record
- A
Json
Datatype - JSON serialization and deserialization for Djinni records. (Has been adopted by cross-language-cpp)
- Swift language generator
- Support for
- iit-reacts/djinni (Last commit ~2019):
- .NET support via C++/CLI (Has been adopted by cross-language-cpp)
Some features from the forks have already been migrated into this project, and we plan to continue to do so. Contributions with cool new features are always welcome!!!
Videos / Articles¶
A curated list of articles and videos about Djinni:
- Djinni in a bottle - Easily share code between iOS and Android using C++ by Stephan Jaetzold (2016)
- CppCon 2017: Stephen Spann “Cross-Platform Apps with Dropbox’s Djinni...”
- Cross-platform code sharing with C++ and Djinni [mobile.cologne @ grandcentrix] (Deutsch)
Integration Tools¶
While this documentation aims to provide all the information you need to get started with Djinni, there is still a long way to really using it in a real world development setup.
The following projects are trying to make the integration of Djinni into the software development process easier:
- Ezored: A C++ multi-platform toolkit template that builds upon Djinni. It targets the platforms Linux, macOS, Windows, Android & iOS.
- Djinni Library Template: A template for a Djinni library that comes with a CLI to build artifacts for each supported platform (XCFramework for iOS/macOS, AAR for Android, NuGet for .Net Core Windows, Conan for Linux).
Last update: October 23, 2021