Skip to content

serkanaltuntas/xcr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔨 Xcode Carpenter (xcr)

Crates.io License: MIT

Xcode Carpenter is your trusty companion for Xcode project maintenance. Like a skilled carpenter, it carefully handles your Xcode projects with precision and care. Currently, it specializes in project renaming while preserving all references and configurations.

🛠️ Features

  • 🏗️ Precise project renaming with reference preservation
  • 🔄 Automatic bundle identifier updates
  • 📝 Detailed operation logging
  • ⚡ Blazingly fast (written in Rust)
  • 🛡️ Safe operations with automatic rollback
  • 🧰 Extensible toolset (more features coming soon)

🔧 Installation

Using Cargo

cargo install xcr

From Source

git clone https://github.com/serkanaltuntas/xcr.git
cd xcr
cargo build --release

The binary will be available at target/release/xcr

🚀 Usage

Basic project renaming:

xcr /path/to/your/project NewProjectName

With bundle identifier update:

xcr /path/to/your/project NewProjectName --bundle-id com.company.newname

For more detailed instructions, check out the Quick Start Guide.

📋 Requirements

  • Rust 1.70 or higher
  • Xcode Command Line Tools
  • Administrative privileges (for some operations)

📚 Documentation

⚙️ How It Works

Xcode Carpenter follows these careful steps:

  1. 📋 Validates the source project structure
  2. 📦 Creates a precise copy of the project
  3. 🔄 Updates all file references
  4. 📝 Renames files and directories
  5. 🏷️ Updates bundle identifiers (when specified)
  6. 🧹 Performs cleanup if needed

All operations are meticulously logged for transparency.

🛡️ Safety Features

  • 💾 Creates backups before modifications
  • ↩️ Automatic rollback on failure
  • 📝 Comprehensive logging
  • ✅ Project structure validation

🤝 Contributing

We welcome contributions! Please read our Contributing Guidelines before submitting pull requests.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

👨‍💻 Author

🙏 Acknowledgments

  • Built with Rust 🦀
  • Inspired by real-world Xcode project maintenance needs

🗺️ Roadmap

Future tools planned for the Xcode Carpenter's toolbox:

  • 🔧 Project dependency analyzer
  • 🎨 Asset catalog optimizer
  • 📦 Framework integrator
  • 🧪 Test target generator
  • 🔍 Code duplicates finder

Stay tuned for more features!

About

A robust tool for renaming Xcode projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages