Phantom is one of the most popular wallet in Solana blockchain ecosystem. Let’s look at what frameworks are inside Phantom iOS app v22.05.23:
➜ Phantom.app ls -1 Frameworks/
hermes.framework
libswiftAVFoundation.dylib
libswiftAccelerate.dylib
libswiftCore.dylib
libswiftCoreAudio.dylib
libswiftCoreFoundation.dylib
libswiftCoreGraphics.dylib
libswiftCoreImage.dylib
libswiftCoreLocation.dylib
libswiftCoreMedia.dylib
libswiftDarwin.dylib
libswiftDispatch.dylib
libswiftFoundation.dylib
libswiftMetal.dylib
libswiftObjectiveC.dylib
libswiftQuartzCore.dylib
libswiftUIKit.dylib
libswiftos.dylib
libswiftsimd.dylib
hermes
A JavaScript engine optimized for running React Native.
https://github.com/facebook/hermes
The rest libswift* exist for supporting iOS version earlier than 12.2 (currently supporting iOS 12.0 or later).
Phantom is developed with React Native:
➜ Phantom.app ls *.jsbundle
main.jsbundle
Since Phantom is not open source software, it is harder to know its dependencies. However, we could still take a glance here:
➜ Phantom.app ls -1 assets/__node_modules
@expo
@phantom-labs
@project-serum
@react-navigation
@solana
browserify-aes
browserify-sign
css-color-keywords
css-tree
diffie-hellman
elliptic
entities
mdn-data
parse-asn1
posthog-node
react-native
react-native-ratings
react-native-svg
react-native-url-polyfill