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


Language Reference: The Swift Programming Language (TSPL) book is the authoritative reference for Swift, offering a guided tour, a comprehensive guide, and a formal reference of the language.

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.

Standard Library: The Swift standard library defines a base layer of functionality for writing Swift programs.

Core Libraries: The Swift Core Libraries project provides higher-level functionality than the Swift standard library. These libraries provide powerful tools that developers can depend upon across all the platforms Swift supports.

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.

REPL & Debugger: The LLDB debugger provides a rich REPL as well as the debugging environment for the Swift Language.

About Swift: A summary of the core features of Swift, supported platforms, and open source projects.


Swift on Server: Swift is a general-purpose programming language with unique characteristics that make it specifically suitable for Server applications.

Embedded development: Introduction to embedded development using Swift. Learn how to get started.

Mixing Swift and C++: Swift has support for bidirectional interoperability with C++. A great variety of C++ APIs can be called directly from Swift, and select Swift APIs can be used from C++.

Value and Reference types: Types in Swift are grouped in two categories: value types and reference types. Each behave differently and understanding the difference is an important part of understanding Swift.

DocC: 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.

Enabling Complete Concurrency Checking: Prepare for Swift 6 by enabling complete concurrency checking in your SwiftPM packages, Xcode projects, and CI scripts.

Getting Started with the Static Linux SDK: Learn how to get started building binaries for Linux with no system dependencies (not even the Swift runtime or C library). Even better, you can do this from any system with a Swift toolchain, allowing you to develop on macOS or Windows and easily deploy to Linux when you go to production.


Swift Evolution: Swift evolution governs how changes are introduced to the Swift language. The process details how ideas are proposed, discussed, reviewed, and eventually accepted into upcoming releases.

Source Code: The code for the Swift project is divided into several open-source repositories, all hosted on

Continuous Integration: CI system produces the snapshot builds posted on, and runs tests against active branches. It is also used as part of the review process to run tests against pull requests before committing them.

Source Compatibility: Source compatibility test suite is a community owned resource designed to test for regressions in the compiler by building against a corpus of Swift source code.

Compiler Architecture: Overview of the Swift compiler architecture.