1 |
|
2 | <h1 align="center">
|
3 | 👋 Welcome to <br><code>pod-install</code>
|
4 | </h1>
|
5 |
|
6 | <p align="center">A fast, zero-dependency package for cutting down on common issues developers have when running <code>pod install</code>.</p>
|
7 |
|
8 |
|
9 |
|
10 | ## 🚀 Usage
|
11 |
|
12 | ```sh
|
13 | npx pod-install
|
14 | ```
|
15 |
|
16 | 👋 **Notice:** This package is not limited to native React projects, you can use it with any iOS or Xcode project using CocoaPods (like Ionic, or Flutter).
|
17 |
|
18 | ## 🤔 Why?
|
19 |
|
20 | All native packages (especially those installed with NPM) often need to explain the following:
|
21 |
|
22 | - What is CocoaPods.
|
23 | - What is gem.
|
24 | - How to install CocoaPods.
|
25 | - `cd` into the proper directory before running `pod install`.
|
26 | - You may need run `pod repo update` to fix your project.
|
27 | - Why CocoaPods requires a darwin machine.
|
28 |
|
29 | But now you can simply instruct users to run `npx pod-install`.
|
30 |
|
31 | This package will do the following:
|
32 |
|
33 | - Check if the machine is darwin.
|
34 | - If not then it'll quit with a helpful error message.
|
35 | - Ensure CocoaPods CLI is installed on the machine.
|
36 | - If not then it'll try to install CocoaPods CLI, first with gem, then with homebrew.
|
37 | - Check if there is an Xcode project in the current directory
|
38 | - If not then it'll try again in `ios/` than `macos/` directories (if any exists).
|
39 | - Run `pod install`
|
40 | - If `pod install` fails because the repo is out of date, then it'll run `pod repo update` and try again.
|
41 |
|
42 | ## ⚙️ Options
|
43 |
|
44 | For more information run `npx pod-install --help` (or `-h`)
|
45 |
|
46 | | Flag | Input | Description | Default |
|
47 | | ------------------- | ----------- | --------------------------------------------- | ---------------------- |
|
48 | | `--non-interactive` | `[boolean]` | Skip prompting to install CocoaPods with sudo | `process.stdout.isTTY` |
|
49 | | `--quiet` | `[boolean]` | Only print errors | `false` |
|
50 |
|
51 | ## License
|
52 |
|
53 | The Expo source code is made available under the [MIT license](LICENSE). Some of the dependencies are licensed differently, with the BSD license, for example.
|