# twostraws/hackingwithswift

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/twostraws-hackingwithswift).**

6,336 stars · 3,238 forks · Swift · Unlicense

## Links

- GitHub: https://github.com/twostraws/HackingWithSwift
- awesome-repositories: https://awesome-repositories.com/repository/twostraws-hackingwithswift.md

## Description

HackingWithSwift is a curated library of coding patterns and an iOS development study guide. It provides a collection of Swift programming examples and practical exercises designed for learning how to build mobile applications on Apple platforms.

The project serves as a reference for SwiftUI, offering modular examples of declarative user interfaces. It covers the study of the Swift language through real-world implementation samples, ranging from general mobile UI design to the logic required for iOS game development.

The repository includes examples of architectural patterns and capabilities such as reactive data handling, protocol-oriented programming, and asynchronous concurrency. These samples demonstrate the use of view models to separate business logic from the view layer.

## Tags

### Mobile Development

- [SwiftUI](https://awesome-repositories.com/f/mobile-development/ios-apple-ecosystem/swiftui.md) — Provides a comprehensive reference and modular examples for building declarative user interfaces with SwiftUI.
- [iOS Application Development](https://awesome-repositories.com/f/mobile-development/ios-application-development.md) — Serves as a primary resource for learning how to build mobile applications for Apple devices.
- [iOS UI Components](https://awesome-repositories.com/f/mobile-development/ios-ui-components.md) — Provides a variety of layout and component examples for implementing user interfaces on iOS.

### Part of an Awesome List

- [Swift Language Guides](https://awesome-repositories.com/f/awesome-lists/learning/swift-language-guides.md) — Guides users through Swift language syntax, features, and best practices using real-world samples.

### Education & Learning Resources

- [Code Examples](https://awesome-repositories.com/f/education-learning-resources/code-examples.md) — Offers a vast collection of functional code samples to demonstrate practical iOS implementation patterns. ([source](https://github.com/twostraws/hackingwithswift#readme))
- [Swift Programming Guides](https://awesome-repositories.com/f/education-learning-resources/educational-programming-resources/swift-programming-guides.md) — Provides educational materials and practical exercises focused on Swift design principles and iOS patterns.
- [iOS Development Study Guides](https://awesome-repositories.com/f/education-learning-resources/ios-development-study-guides.md) — Functions as a curated study guide and library of coding patterns for Apple platform development.

### Programming Languages & Runtimes

- [Async-Await Flow Control](https://awesome-repositories.com/f/programming-languages-runtimes/async-await-flow-control.md) — Implements non-blocking asynchronous execution using Swift's native async/await concurrency model.
- [Protocol Oriented Programming](https://awesome-repositories.com/f/programming-languages-runtimes/protocol-oriented-programming.md) — Demonstrates the protocol-oriented programming paradigm to define shared behavior across diverse data types.

### Software Engineering & Architecture

- [MVVM Patterns](https://awesome-repositories.com/f/software-engineering-architecture/mvvm-patterns.md) — Provides examples of the Model-View-ViewModel pattern to separate business logic from the view layer.
- [Reactive Data Streams](https://awesome-repositories.com/f/software-engineering-architecture/reactive-data-streams.md) — Implements architectural patterns for piping real-time data to the user interface using the Combine framework.

### Game Development

- [iOS](https://awesome-repositories.com/f/game-development/ios.md) — Covers the logic and frameworks required for creating interactive gameplay on iOS.
