If you are new to Swift, you may want to check out these additional resources.

Swift Language

The Swift Programming Language Book

The Swift Programming Language is the authoritative reference for Swift, offering a guided tour, a comprehensive guide, and a formal reference of the language.


We encourage you to participate in translating The Swift Programming Language into other languages. Get involved with an existing translation project, or start a new one.

If you know of a quality translation project underway, please let us know on the Compiler Development forums, and we’ll provide a link to that project on this page.

Standard Library

The Swift standard library defines a base layer of functionality for writing Swift programs. Documentation for the standard library is presently hosted on the Apple Developer website.


There are a number of packages that are part of the core Swift project. Below is a list of packages that currently offer hosted documentation.


DocC is a documentation compiler that makes it easy for you to produce documentation for your Swift frameworks and packages. The compiler builds your documentation by combining the comments you write in source with extension files, articles, and tutorials that live alongside your package’s source code. This documentation is for using the DocC tool to generate documentation for your project.

API Design Guidelines

Delivering a clear, consistent developer experience when writing Swift code is largely defined by the names and idioms that appear in APIs. These design guidelines explain how to make sure that your code feels like a part of the larger Swift ecosystem.


Swift Package Manager

The Swift Package Manager is a tool for managing the distribution and use of “packages” of Swift code. It’s integrated with the Swift build system to automate the process of downloading, compiling, and linking dependencies into target products.

Migration Guidelines

For users of Xcode, there is an included Swift migrator tool that helps you move your project to the latest version of Swift, or update it to work with the latest SDKs.