A user-friendly language
Make maintaining projects everyone's task by describing them using a plain language. And... no more Git conflicts!
import ProjectDescriptionimport ProjectDescriptionHelperslet project = Project.featureFramework(name: "Home",dependencies: [.project(target: "Features", path: "../Features"),.framework(path: "Carthage/Build/iOS/SnapKit.framework").package(product: "KeychainSwift")])
Developers love simple things
We take care of the complex things — you focus on building great apps
Plain and easy language
Describe your projects as you think about them. Build settings, phases and other intricacies become implementation details.
Instead of maintaining multiple Xcode projects, describe your project once, and reuse it everywhere.
Generated projects are optimized for your focus and productivity. They contain just what you need for the task at hand.
If we know your project won’t compile, we fail early. We don't want you *to* waste time waiting for the build system to bubble up errors.
Be opinionated about the structure of the projects; define project factories that teams can use to create new projects.
Tuist is optimized to support projects at scale. Whether your project is 1 target, or 1000, it should make no diffference.
A video is worth a thousand words
Watch our series of videos that explain different features of Tuist.
Introduction to Tuist
In this video, I give a quick introduction to Tuist. I talk about how to install the tool and bootstrap a new modular app using the init command. Moreover, I show how to use the focus command to generate and open and Xcode project, as well as how to use "tuist edit" to edit the manifest files using Xcode.
You don't need a tooling team
Tuist is already trusted by companies that let us do the heavy-lifting and complex work for them.
Tuist has delivered more than the SoundCloud iOS Collective expected! We aimed to make modularization more accessible and maintainable. We got this... and better build times!.