Skip to content

Instantly share code, notes, and snippets.

@Blackjacx
Created September 27, 2023 08:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Blackjacx/b2062cf117a571e58a028b767c6e4f68 to your computer and use it in GitHub Desktop.
Save Blackjacx/b2062cf117a571e58a028b767c6e4f68 to your computer and use it in GitHub Desktop.
Tuist Pro/Con

PRO

  • Tuist own explanation of its advantages
  • Tuist is developed in Swift (no additional dependencies needed for installation)
  • Fast bug fixes since Tuist is open source and developed in a community driven way
  • Developers can write configuration files in Swift ❤️
  • Code for setting up multiple projects can be shared using Project-Description-Helpers
  • Project configuration and build settings can be documented
  • External dependencies can be integrated in an easy way. Carthage and SPM are supported too.
  • The workspace and project file can be removed from git which leads to a high reduction of merge conflicts and a smoother development process.
  • Supports the creation of release pipelines for GitHub Actions and Bitrise.
  • Supports an advanced local or remote caching mechanism which is able to replace local targets with pre-compiled versions.
  • Auto generates an Xcode project for the configuration itself. The configuration is automatically verified at its compile time.
  • Enforcement of certain editor settings, e.g. usesTabs, indentWidth, tabWidth, wrapsLines
  • When you have really a lot of targets you can be sure that only the targets needed are compiled in the project file. This is very useful when developing white-label apps.
  • Tuist always generates a clean, state-of-the-art project and not one where old project settings accumulate in the dark.
  • Stale or duplicated files are detected since they are blindly imported in the project and catched by the compiler

CON

  • You cannot add shared breakpoints anymore when ignoring the workspace file in git.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment