Motivation
Working on a project with a huge amount of pods I had some troubles:
-
Slow and unnecessary indexing of pods targets, which implementation I rarely try to edit;
-
Redundant rebuild time, probably as a result of problems CocoaPods hooks or Xcode build system;
-
Freezing UI during navigation.
You can read
Description
Rugby
is CLI tool that was developed to solve the above problems:
+
Cache all pods dependencies and remove their targets from the Pods project;
+
Rebuild only changed pods;
+
Remove unnecessary sources from a project and reduce project size;
+
Drop any unneeded targets with sources and resources by RegEx.
What makes it different?
Ruby alternatives: PodBuilder | CocoaPods Binary Cache | CocoaPods Binary
Discussions
You can read more about
Feel free to report any issues or suggest some new feature requests.
Homebrew 🍺
Install using brew tap swiftyfinch/Rugby https://github.com/swiftyfinch/Rugby.git
brew install rugby
More information
🏈 Rugby Remastered 
You can find all information in the readme.
🏈
How to use Run in your project directory after each pod install:
pod install && rugby
Watch
Read more about advanced usage.
📚
Documentation Command | Description |
---|---|
General Rugby documentation. | |
Convert pods to prebuilt dependencies. | |
Run a predefined sequence of commands. | |
Keep only selected targets and all their dependencies. | |
Remove any targets by RegEx. |
Known limitations
-
Not supported WatchOS SDK
🐛 Contribution
Note
Rugby 1.x is frozen for new feature requests. Please, open only requests with bug fixes.
That's because there is the new Rugby2.x version and it will be released soon.
This new version isn't back-compatible with the first one and has an absolutely different code base.
Also, Rugby2.x will be a closed code for the first time. And then I will open source after all preparations.
Sorry for that freeze time, I hope we continue to develop this product together in the nearest future.
📮 Support
If you want to support this project, you can do some of these:
1)
Press
2)
Share the project
3)
Leave feedback in the discussions
If you have any questions or feature requests, feel free to open a discussion or an issue.