Xcode on steroids
Easy and fast
Bootstrap, maintain, and interact with
Xcode projects at any scale
GET STARTED
Trusted by the following companies and projects:
WORKSPACES
Describe & generate
Describe your apps and the frameworks they depend on. If they have unit or ui test targets you can define them too; even Swift package dependencies.
Project.swift
import ProjectDescription
import ProjectDescriptionHelpers
let project = Project.featureFramework(
name: "Home",
dependencies: [
.project(target: "Features", path: "../Features"),
.framework(path: "Carthage/Build/iOS/SnapKit.framework")
.package(product: "KeychainSwift")
]
)
DESIGN
Principles
Tuist is not a project generator, it’s a tool to empower you to build apps of any scale.
Plain and easy language
Describe your projects as you think about them. Build settings, phases and other intricacies become implementation details.
Reusability
Instead of maintaining multiple Xcode projects, describe your project once, and reuse it everywhere.
Focus
Generated projects are optimized for your focus and productivity. They contain just what you need for the task at hand.
Early errors
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.
Conventions
Be opinionated about the structure of the projects; define project factories that teams can use to create new projects.
Scale
Tuist is optimized to support projects at scale. Whether your project is 1 target, or 1000, it should make no diffference.
USERS
Reflections
Tuist is a project trusted and supported by developers that are already having fun working with Xcode
Kassem Wridan avatar
Kassem Wridan
By leveraging Tuist libraries, we’ve built tooling to help us manage and scale our Xcode projects in a safe and consistent manner. Our team has also contributed back to the community to help other developers tame their large projects.
iOS developer at Bloomberg
Romain Boulay avatar
Romain Boulay
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!.
iOS lead at SoundCloud
Oliver Atkinson avatar
Oliver Atkinson
It has really helped out the team and project by creating an environment where defining new modules is easy, modularity allows us to focus and become experts in our individual domains.
Senior iOS developer at Sky
Ollie's avatarKas' avatarMarek's profile
CONTRIBUTE
You can bring more fun to Xcode projects too
Tuist is a welcoming and open source project that is writen in Swift by and for the community
START CONTRIBUTING
Lakpa's avatarMarcin's avatar
Tuist's logotype

Tuist

Documentation

Getting startedManifest specificationDependenciesContributors
Tuist © Copyright 2019. All rights reserved. Crafted with ♥ by Pedro Piñera & the contributors.

Other

GitHubSlackBlogReleases
Tuist © Copyright 2019. All rights reserved. Crafted with ♥ by Pedro Piñera & the contributors.