All Projects → igor-makarov → Xcake

igor-makarov / Xcake

Licence: mit
🍰 Describe Xcode projects in a human readable format and (re)generate one on demand.

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Xcake

Cdmarkdownkit
An extensive Swift framework providing simple and customizable markdown parsing.
Stars: ✭ 158 (-71.22%)
Mutual labels:  xcode, tvos, watchos, cocoapods
Cloudkitgdpr
Framework for allowing users to manage data stored in iCloud
Stars: ✭ 126 (-77.05%)
Mutual labels:  xcode, tvos, watchos, cocoapods
Fugen
Command line tool for exporting resources and generating code from your Figma files
Stars: ✭ 41 (-92.53%)
Mutual labels:  xcode, tvos, watchos, cocoapods
Sqift
Powerful Swift wrapper for SQLite
Stars: ✭ 119 (-78.32%)
Mutual labels:  xcode, tvos, watchos, cocoapods
Fire
🔥A delightful HTTP/HTTPS networking framework for iOS/macOS/watchOS/tvOS platforms written in Swift.
Stars: ✭ 243 (-55.74%)
Mutual labels:  osx, tvos, watchos, cocoapods
Sqlitelib
Easily build a custom SQLite static library for use in macOS and iOS frameworks and apps.
Stars: ✭ 38 (-93.08%)
Mutual labels:  xcode, osx, tvos, watchos
Swifterswift
A handy collection of more than 500 native Swift extensions to boost your productivity.
Stars: ✭ 10,706 (+1850.09%)
Mutual labels:  xcode, tvos, watchos, cocoapods
Swiftui Shapes
🚀 Collection of SwiftUI shapes
Stars: ✭ 137 (-75.05%)
Mutual labels:  xcode, tvos, watchos
Stringz
A lightweight and powerful editor for localizing iOS, macOS, tvOS, and watchOS applications.
Stars: ✭ 440 (-19.85%)
Mutual labels:  xcode, tvos, watchos
Swiftui Sliders
🚀 SwiftUI Sliders with custom styles
Stars: ✭ 241 (-56.1%)
Mutual labels:  xcode, tvos, watchos
Swiftui Charts
🚀 SwiftUI Charts with custom styles
Stars: ✭ 272 (-50.46%)
Mutual labels:  xcode, tvos, watchos
Swiftuipager
Native Pager in SwiftUI
Stars: ✭ 430 (-21.68%)
Mutual labels:  tvos, watchos, cocoapods
Surmagic
🚀 The better way to deal with Binary Frameworks on iOS, Mac Catalyst, tvOS, macOS, and watchOS. Create XCFrameworks with ease.
Stars: ✭ 119 (-78.32%)
Mutual labels:  xcode, tvos, watchos
Jsonify
♨️A delightful JSON parsing framework.
Stars: ✭ 42 (-92.35%)
Mutual labels:  osx, tvos, watchos
Audioindicatorbars
AIB indicates for your app users which audio is playing. Just like the Podcasts app.
Stars: ✭ 279 (-49.18%)
Mutual labels:  xcode, tvos, cocoapods
Datez
📆 Breeze through Date, DateComponents, and TimeInterval with Swift!
Stars: ✭ 254 (-53.73%)
Mutual labels:  tvos, watchos, cocoapods
Swiftframeworktemplate
A template for new Swift iOS / macOS / tvOS / watchOS Framework project ready with travis-ci, cocoapods, Carthage, SwiftPM and a Readme file
Stars: ✭ 527 (-4.01%)
Mutual labels:  tvos, watchos, cocoapods
Attributedstring
基于Swift插值方式优雅的构建富文本, 支持点击长按事件, 支持不同类型过滤, 支持自定义视图等.
Stars: ✭ 294 (-46.45%)
Mutual labels:  tvos, watchos, cocoapods
Web3.swift
A pure swift Ethereum Web3 library
Stars: ✭ 295 (-46.27%)
Mutual labels:  tvos, watchos, cocoapods
Solarized Dark For Xcode
Solarized Dark Theme for Xcode. Compatible with all modern versions of Xcode since 2013!
Stars: ✭ 358 (-34.79%)
Mutual labels:  xcode, tvos, watchos

Xcake

Gem Twitter: @igormaka License Build Status Gem

Back under new management!

The original author of Xcake, James Campbell has decided to move on to other endeavors.
Igor Makarov has volunteered to step in as the main maintainer, both because of his reliance on the gem for work, and because of general aversion to .pbxproj files.

Cakefile — A Podfile for your main project!

Describe your project in a simple text file: your Cakefile. Xcake generates your project based on this file including importing all of your files and creating groups and targets to match the file hierarchy.

This is perfect for working in teams or with CocoaPods as it reduces merge conflicts, makes it easy to modify settings and allows you to create a clean project anytime you need to.

Isn't this just like Generamba or Crafter?
No, these tools are for scafolding an initial project structure to get you started (creating folder structure, git repo etc.).
Xcake will not create a folder structure, but will generate a project from it, and will continue to generate it each time you want it. Added some files? Generate! Renamed a folder? Generate!
Sick of seeing .pbxproj diffs in git? Add your project to .gitignore and generate it on checkout.

Get in contact with the developer on Twitter: @igormaka.

PBX delendare est.


FeaturesInstallationNeed help?Documentation


Features

Xcode projects were once described as "the closest thing to taboo we have to deal with on a regular basis", but it doesnt have to be this way.

Store a simple description of your project in a text file, your Cakefile, to easily create a xcode project from any computer. Easily see, merge and maintain the structure of your project, It’s time to add *.xcodeproj into .gitignore!.

You define a project like this:

application_for :ios, 8.0 do |target|
  target.name = "MyApp"
end

To generate the xcode project, just run:

xcake make

If you would like an example Cakefile for guidence, just run:

xcake init
xcake
Flexibly configure and create xcode project from one easy to read Cakefile
🚢 Generate from any computer, including a CI-server
💭 Never remember any difficult commands, just xcake make
📃 Store everything but the project in git. Never again manually fix any corruptions or merge issues with the project.
🚀 Saves you hours when working with xcode projects
⚓️ Confidence that the project file is exactly the same during Continuous Delivery
💻 Support for OSX, iOS and watchOS apps

Installation

Install the gem by running:

sudo gem install xcake --verbose

Make sure, you have the latest version of the Xcode command line tools installed:

xcode-select --install

If you experience slow launch times of xcake, try running

gem cleanup

to clean up outdated gems.

System Requirements: xcake requires Mac OS X or Linux with Ruby 2.0.0 or above.

Available commands

Xcake can create an example cakefile when you run:

xcake init

Usually you'll use xcake by running the command

xcake make

Xcake will then generate a Xcode project based on your Cakefile

Sample Cakefile

To get better understanding of how to start using Xcake in a real project, see examples under example folder.

There is a sample app project (the project file has been generated using Xcake v.0.7.1 based on the Cakefile) as well as sample Cakefile for an iOS framework project.

Need help?

Please submit an issue on GitHub and provide information about your setup

People who use Xcake

  • Bending Spoons
  • Moovit

License

This project is licensed under the terms of the MIT license. See the LICENSE file.

This project is no way affiliated with Apple Inc. This project is open source under the MIT license, which means you have full access to the source code and can modify it to fit your own needs. Xcake runs on your own computer or server, so your sensitive information will never leave your own computer. You are responsible for how you use xcake.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].