Installation of Yoga is currently a manual process. We have plans on bringing Yoga to the many available package management systems (e.g., Yarn, Gradle, Cocoapods), but we do not have a target date at this time. We would greatly appreciate community contributions here.
Getting the Code
For now we recommend including Yoga as a git submodule in your project. Once done, you can either build Yoga using Buck (detailed below) or integrate it into your existing build system by including the C library from the root
yoga directory as well as the language bindings (e.g., Java, C#) you wish to use.
Running the Examples
Yoga ships with an iOS example. To get it running:
1 2 3 4
$ git clone https://github.com/facebook/yoga.git $ cd open yoga/YogaKit/YogaKitSample/ $ pod install $ open YogaKitSample.xcworkspace
Yoga ships with an Android example too. To get it running on an attached device (or emulator):
1 2 3
$ git clone https://github.com/facebook/yoga.git $ cd yoga $ buck install -r android/sample
Actually, this is more than just an example, and more a layout system for Android using Yoga in general (see
YogaLayout). For more information see the Android API section.
Building with Buck
Yoga uses Buck as its build system. Buck is not required for using Yoga, but, if you already use Buck, then integrating Yoga is very simple.
If you are using Buck all you need to do is reference the language bindings you want to use in your
1 2 3 4 5 6 7 8 9 10
deps = [ # C '//path/to/submodule/yoga:yoga', # Java '//path/to/submodule/yoga/java:jni', # Objective-C '//path/to/submodule/yoga/YogaKit:YogaKit', ]