A demonstration of how to set up an iOS monorepo with Buck.
In order to build using Buck, you first need to install it using Homebrew.
brew tap facebook/fb
brew install buck
The project contains a very simple iOS app consisting of a single screen. The project is divided into packages.
app
contains the main application project. common
is a tiny framework depended on by app
.
In each package you will find a BUCK
file containing the build rules for that package. At the project root
you will find a .buckconfig
file containing build settings.
These buck files are a source of truth and are used by Buck to build the project.
Buck can generate an Xcode workspace from the build definitions. If however the build definition changes, it is important the workspace is regenerated.
The workspace can be generated by
buck project app:BuckDemoApp