Yet another caching tool for Xcode projects but with SPM support
🎯 Motivation
Caching frameworks is a popular technique to tackle project build time in many large-scale projects. A few outstanding tools in this category are cocoapods-binary-cache, Rugby, and XCRemoteCache. Rugby and cocoapods-binary-cache are particularly tailored for CocoaPods-based projects while XCRemoteCache works for a more general project structure. However, all three of them has the same limitation: lacking support for SPM/Swift packages.
This xccache tool attempts to bridge that gap.
The long-term vision of this initiative is to make it a unified caching tool for iOS projects, including CocoaPods-based structures.
🔧 Installation
Via Bundler: Add the gem xccache
to the Gemfile of your project.
gem "xccache"
Via RubyGems:
$ gem install xccache
🚀 Getting Started
Check out this doc: Getting Started
TLDR: Simply run xccache
to set it up. Run xccache --help
to explore the usages.
If caches are in place, you should see this in Xcode build logs.
Case Study: For Kickstarter iOS project
👉🏻 Check it out: here 🎉
📑 Documentation
Check out these docs to understand more about xccache:
- 🔧 How to Install
- 📝 Overview
- 🚀 Getting Started
- 📖 Under the Hood
- 🩺 Troubleshooting
- ✍🏼 Case Study: Using XCCache in Kickstarter iOS Project
📌 Features and Roadmap
Check out this doc: Features and Roadmap
🤝 Contribution
Refer to the contributing guidelines for details.
⚖️ License
The tool is available as open-source under the terms of the MIT License.
✍️ Acknowledgement
- Cytoscape.js for the cachemap visualization
⭐ Support
If you find this project interesting and useful, keep me going by leaving a star ⭐, sharing the project, or buying me a coffee 🫶.