| 1 | # tower-of-bazel |
| 2 | |
| 3 | > {fast, correct} + {polyglot} = {tower of bazel} |
| 4 | |
| 5 | This simple repo demonstrates how to set up a multi-language monorepo. |
| 6 | |
| 7 | ## Before running it |
| 8 | |
| 9 | This project is using `git LFS`. After cloning it, remember to run the following commands. |
| 10 | |
| 11 | ```bash |
| 12 | git lfs install |
| 13 | git lfs pull |
| 14 | ``` |
| 15 | |
| 16 | ## How to use |
| 17 | |
| 18 | Main folder structure is to follow backend / frontent convention. If you're new to Bazel, read [the documentation](https://bazel.build/docs). Otherwise, query all targets in a given platform: |
| 19 | |
| 20 | ```bash |
| 21 | bazel query //backend/... |
| 22 | bazel query //frontend/... |
| 23 | ``` |
| 24 | |
| 25 | ### Tauri |
| 26 | |
| 27 | Run debug Tauri app: |
| 28 | |
| 29 | ```bash |
| 30 | bazel run //frontend/desktop:dev |
| 31 | ``` |
| 32 | |
| 33 | ### Apple |
| 34 | |
| 35 | Generate Xcode project: |
| 36 | |
| 37 | ```bash |
| 38 | bazel run //frontend/apple:xcodeproj |
| 39 | ``` |
| 40 | |
| 41 | ### Rails |
| 42 | |
| 43 | Ruby on rails app: |
| 44 | |
| 45 | ```bash |
| 46 | bazel run //backend/app:rails |
| 47 | ``` |
| 48 | |
| 49 | ### Android |
| 50 | |
| 51 | ```bash |
| 52 | bazel mobile-install //frontend/android/src/main:app --start_app |
| 53 | ``` |
| 54 | |
| 55 | ## Credits |
| 56 | |
| 57 | - [Tauri](https://github.com/marmos91/tauri-bazel-next-typescript). |
| 58 | - [Tauri on Bazel](https://github.com/setoelkahfi/tauri-on-bazel). |
| 59 | - [Apple](https://github.com/mattrobmattrob/bazel-ios-swiftui-template). |