The joys of creating Xcode project files

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • Flutter

    Flutter makes it easy and fast to build beautiful apps for mobile and beyond

  • Kind of? But there seems to be a bunch of barriers in making it happen:

    SkSL warm-up doesn’t help newer iPhones using Metal.

    Flutter recently migrated from OpenGL to Metal for all newer iOS devices. (Please reference Metal on iOS FAQ on which iOS devices are considered new enough to use Metal.) However, Skia currently only implemented the SkSL warm-up for OpenGL. So the SkSL warm-up would only speed up older iOS devices by default. If you find shader compilation jank to be an issue for your app on newer iPhones, please let us know by filing a GitHub issue. In the longer term, we have a plan to use test-based shader warm-up to mitigate this. If there’s an urgent need for fixing shader compilation jank on newer iPhones, please leave feedback on Issue 61045, and we can help you turn on OpenGL for your app.

    https://flutter.dev/docs/perf/rendering/shader

    https://github.com/flutter/flutter/issues/61045

  • cordova-node-xcode

    Apache cordova

  • We are producing a white-label mobile app which also runs on Apple devices. It's part of our build chain to modify bespoken Xcode project files. Of great help is this node library which allows automating our build process which includes modifications to the Xcode project file: https://github.com/apache/cordova-node-xcode

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • XcodeGen

    A Swift command line tool for generating your Xcode project

  • It's such trash. For my personal projects, XcodeGen is a lifesaver.

    How Apple thinks that a single god file is a good idea is crazy to me. No other build tool needs this.

    https://github.com/yonaskolb/XcodeGen

  • Xcodeproj

    Create and modify Xcode projects from Ruby.

  • I’ve used the Cocoapods tool Xcodeproj to facilitate really nice Workflows that Xcode didn’t provide for me out of the box. I don’t need this in every project but when I do it’s a really nice API for manipulating the pbxproj files

    https://github.com/CocoaPods/Xcodeproj

  • obakit

    Discontinued [Moved to: https://github.com/OneBusAway/OBAKit]

  • I cannot imagine working on an iOS application that is meant to be maintained by multiple people that does not use Xcodegen.

    Additionally, it is the only sane way I've found of handling whitelabel application development. Here's an example for anyone who wants to see it in action: https://github.com/onebusaway/obakit

  • xcodeproj

    Python tools for interacting with Xcode project bundles (by microsoft)

  • Absolutely. I spent forever reverse engineering the format to write a Python parser (https://github.com/microsoft/xcodeproj). It covers the projects I need it to (one in particular is very complex, probably in the top 100 most complex ones out there - I'm sure you can figure out which from my profile). However, there are plenty of areas I had to guess. And this is just for reading, no writing support has been added at this point.

  • objc-lisp-bridge

    A portable reader and bridge for interacting with Objective-C and Cocoa

  • This tool doesn’t always work because plists can contain arbitrary Objective-C objects. However, there’s a relatively nice objective-c API that can be used to decode them losslessly that I used to extract data from Safari’s reading list l:

    https://github.com/fiddlerwoaroof/objc-lisp-bridge/blob/mast...

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts