swiftlang /swift

The Swift Programming Language

★ 70,547⑂ 10,900👁 2,387⑃ 71,623● 18,566▤ 73◈ 0
SwiftApache-2.0Created 2015-10-23swift.org
70,547
stars
+2+24+68
10,900
forks
2,387
watchers
71,623
prs
18,566
issues
73
releases
0
discussions

README

Swift Programming Language

 Welcome to Swift

Swift is a high-performance system programming language.  It has a clean
and modern syntax, offers seamless access to existing C and Objective-C code
and frameworks, and is memory-safe by default.

Although inspired by Objective-C and many other languages, Swift is not itself a
C-derived language. As a complete and independent language, Swift packages core
features like flow control, data structures, and functions, with high-level
constructs like objects, protocols, closures, and generics. Swift embraces
modules, eliminating the need for headers and the code duplication they entail.

To learn more about using the language, visit swift.org.
To learn more about the compiler's internal design, see the
documentation index.

- Contributing to Swift
- Getting Started
  - Swift Toolchains
  - Build Failures
- Learning More

 Contributing to Swift

Contributions to Swift are welcomed and encouraged! Please see the
Contributing to Swift guide.

Before submitting the pull request, please make sure you have tested your
 changes
 and that they follow the Swift project guidelines for contributing
 code.

To be a truly great community, Swift.org needs to welcome
developers from all walks of life, with different backgrounds, and with a wide
range of experience. A diverse and friendly community will have more great
ideas, more unique perspectives, and produce more great code. We will work
diligently to make the Swift community welcoming to everyone.

To give clarity of what is expected of our members, Swift has adopted the
code of conduct defined by the Contributor Covenant. This document is used
across many open source communities, and we think it articulates our values
well. For more, see the Code of Conduct.

 Getting Started

If you are interested in:
- Contributing fixes and features to the compiler: See our
  How to Submit Your First Pull Request guide.
- Building the compiler as a one-off: See our [Getting Started guide][].
- Building a toolchain as a one-off: Follow the [Getting Started guide][]
  up until the "Building the project" section. After that, follow the
  instructions in the Swift Toolchains section below.

We also have an FAQ that answers common questions.

[Getting Started guide]: /docs/HowToGuides/GettingStarted.md

 Swift Toolchains

 Building

Swift toolchains are created using the script
build-toolchain. This
script is used by swift.org's CI to produce snapshots and can allow for one to
locally reproduce such builds for development or distribution purposes. A typical 
invocation looks like the following:

sh
  $ ./swift/utils/build-toolchain $BUNDLE_PREFIX


where $BUNDLE_PREFIX is a string that will be prepended to the build 
date to give the bundle identifier of the toolchain's Info.plist. For 
instance, if $BUNDLE_PREFIX was com.example, the toolchain 
produced will have the bundle identifier com.example.YYYYMMDD. It 
will be created in the directory you run the script with a filename 
of

Top issues

Latest release

Swift 6.4.2 Release swift-6.4.2-RELEASE 2026-10-30

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON