Awesome Swift and Tutorial Resources
=============
A curated list of awesome Swift resources and tutorial websites, inspired by [awesome-awesomeness](https://github.com/bayandin/awesome-awesomeness).

Feel free to contribute !
And I will update the descriptions in Chinese and English.

- [Awesome Swift and Tutorial Resources](#awesome-swift-and-tutorial-resources)
  - [Tutorial Resources](#tutorial-resources)
      - [Swift Websites](#swift-websites)
      - [Swift Communities](#swift-communities)
      - [Swift Blogs](#swift-blogs)
      - [Swift Books](#swift-books)
      - [Swift Videos](#swift-videos)
      - [Swift Courses](#swift-courses)
  - [Awesome Swift](#awesome-swift)
  - [Demo Apps](#demo-apps)
  - [Others](#others)
      - [Animation](#animation)
      - [Documentation](#documentation)
      - [UI Design](#ui-design)
      - [Prototyping](#prototyping)
  - [Learn Git](#learn-git)




# Tutorial Resources
*Various resources, such as books, videos, websites and articles, for improving your Swift development skills and knowledge.*

## Swift Websites
* [AppCoda](http://www.appcoda.com/ios-programming-course/)
* [CodeWithChris](https://codewithchris.com/)
* [Ray Wenderlich Swift Tutorials](http://www.raywenderlich.com/tutorials)
* [iOS Swift Development Tutorials by Jameson Quave](http://jamesonquave.com/blog/category/swift/)
* [Swiftcast.tv](https://swiftcast.tv/articles)
* [Cocoa Kris](http://www.cocoakris.com/tutorial/swift-singleton/)
* [iOS-Blog Swift Tutorials](http://ios-blog.co.uk/category/swift-tutorials/)
* [Functions in Swift](http://www.codingexplorer.com/functions-swift-parameters-return-types/)
* [Swift InFlux](https://github.com/ksm/SwiftInFlux)
* [Natasha The Robot](http://natashatherobot.com/)
* [LearnSwift.tips](http://www.learnswift.tips/)
* [Hacking with Swift](https://www.hackingwithswift.com) - It has 36 complete projects structured to help people learn Swift.
* [Apple - Start Developing iOS Apps (Swift)](https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/DevelopiOSAppsSwift/) - Official docs introduction to building your first app—including the tools, major concepts, and best practices.


## Swift Communities
* [Stackoverflow](http://stackoverflow.com/questions/tagged/swift)
* [Reddit/r/swift](http://www.reddit.com/r/swift)
* [Apple Devforums Swift](https://devforums.apple.com/index.jspa)


## Swift Blogs
* [Official Swift Blog](https://developer.apple.com/swift/blog/)
* [iOS8 Day-by-Day](https://www.shinobicontrols.com/blog/posts/2014/07/16/ios8-day-by-day-index)
* [We ❤ Swift](http://www.weheartswift.com/)
* [Airspeed Velocity](http://airspeedvelocity.net/)
* [Practicalswift.com](http://practicalswift.com/)
* [radex.io](http://radex.io/)
* [Swift Programming — Medium](https://medium.com/swift-programming)
* [Swift Wala](http://swiftwala.com/)
* [IOScreator](http://www.ioscreator.com/swift/)


## Swift Books
* [The Swift Programming Language](https://itunes.apple.com/us/book/the-swift-programming-language/id881256329?mt=11)
* [Using Swift with Cocoa and Objective-C](https://itunes.apple.com/us/book/using-swift-cocoa-objective/id888894773?mt=11)
* [Swift Standard Library Reference](https://developer.apple.com/library/prerelease/ios/documentation/General/Reference/SwiftStandardLibraryReference/)
* [Functional Programming in Swift ($39)](http://www.objc.io/books/)
* [Pro Design Patterns in Swift](http://www.apress.com/9781484203958?gtmf=f) - Learn how to apply classic design patterns to iOS app development using Swift.
* [iOS 8 Swift Programming Cookbook](http://shop.oreilly.com/product/0636920034254.do) - Entirely rewritten for Apple’s Swift programming language, this updated cookbook helps you overcome the vexing issues you’re likely to face when creating apps for iOS devices.
* [iOS 8 Programming Fundamentals with Swift](http://shop.oreilly.com/product/0636920034278.do) - Move into iOS development by getting a firm grasp of its fundamentals, including the Xcode IDE, the Cocoa Touch framework, and Swift—Apple’s new programming language.


## Swift Videos
* [Build Your First iOS App in SwiftUI](https://youtu.be/aP-SQXTtWhY)
* [Developing iOS 8 Apps with Swift by Stanford - Paul Hegarty.](https://itunes.apple.com/us/course/developing-ios-8-apps-swift/id961180099)
* [How To Make an iPhone App](http://codewithchris.com/how-to-make-an-iphone-app/)
* [250+ Swift Language Tutorials at YouTube](https://www.youtube.com/playlist?list=PLxwBNxx9j4PUpjCEVwjqFvNecNvQ6Dj6G)
* [The Swift Language YouTube Channel ](https://www.youtube.com/user/TheSwiftLanguage/)
* [Brian Advent Youtube Channel](https://www.youtube.com/channel/UCysEngjfeIYapEER9K8aikw/videos)
* [Skip Wilson Youtube Channel](https://www.youtube.com/user/SkipCasts/videos)
* [iOS Development with Swift in Motion](https://www.manning.com/livevideo/ios-development-with-swift-lv)

## Swift Courses
* [Learn Swift Programming to Make iOS Apps at Udemy ($39)](https://www.udemy.com/learn-swift-programming-to-make-ios-apps)
* [Learn Swift By Angela Yu $20 (may vary)](https://www.udemy.com/course/ios-13-app-development-bootcamp/)
* [Swift - Learn Apple's New Programming Language Step By Step at Udemy ($99)](https://www.udemy.com/swift-learn-apples-new-programming-language-by-examples/)
* [The Bitfountain iOS 8 with Swift Immersive at Bitfountain($149)](http://bitfountain.io/courses/complete-ios8)
* [iOS Developer Nanodegree at Udacity](https://www.udacity.com/course/nd003)
* [Swiftris - Build your first ios game with swift](https://www.bloc.io/tutorials/swiftris-build-your-first-ios-game-with-swift)
* [Learn iOS Development with Swift at TreeHouse](https://teamtreehouse.com/tracks/ios-development-with-swift)
* [Lynda.com](http://www.lynda.com/Swift-tutorials/Swift-Programming-Language-First-Look/182175-2.html)


# Awesome Swift
* [Awesome-iOS](https://github.com/vsouza/awesome-ios)
* [Awesome-iOS-UI](https://github.com/cjwirth/awesome-ios-ui)
* [Awesome-Swift(1) @matteocrippa](https://github.com/matteocrippa/awesome-swift)
* [Awesome-Swift(2) @Wolg](https://github.com/Wolg/awesome-swift)
* [Awesome-ios-animation](https://github.com/sxyx2008/awesome-ios-animation) - A curated list of awesome iOS animation, including Objective-C and Swift libraries
* [Awesome-ios-chart](https://github.com/sxyx2008/awesome-ios-chart) - A curated list of awesome iOS chart libraries, including Objective-C and Swift


# Demo Apps
* [2048](https://github.com/austinzheng/swift-2048) - 2048 demo game in swift.
* [Alarm](https://github.com/ChrisChares/swift-alarm) - an alarm app in swift.
* [Chat](https://github.com/acani/Chats) - chat like app implementation in swift.
* [CloudKit-To-Do-List](https://github.com/anthonygeranio/CloudKit-To-Do-List) - a cloudkit based to do list.
* [DesignerNewsApp](https://github.com/MengTo/DesignerNewsApp) - simple iOS client for Designer News, by the creator of Design+Code and the team, written in Swift.
* [DeckRocket](https://github.com/jpsim/DeckRocket) - deckrocket porting in swift.
* [Edhita](https://github.com/tnantoka/edhita) - text edit app.
* [Eidolon](https://github.com/artsy/eidolon) - The Artsy auction kiosk app.
* [FanFanSwift](https://github.com/geek5nan/FanFanSwift) - a game in swift.
* [firefox-ios](https://github.com/mozilla/firefox-ios) - firefox for iOS being developed by Mozilla.
* [Federal Open Data](https://github.com/USDepartmentofLabor/Swift-Sample-App) - Get federal Open Data using the Federal Data SDK
* [FlappySwift](https://github.com/fullstackio/FlappySwift) - flappy bird clone in swift.
* [Gulps](https://github.com/FancyPixel/gulps) - OS app for iOS and apple watch to monitor water consumption.
* [HackerNews](https://github.com/amitburst/HackerNews) - hackernews reader app written in swift.
* [HausClock](https://github.com/nottombrown/HausClock) - chess stile clock app in swift.
* [HomeKitDemo](https://github.com/KhaosT/HomeKit-Demo) - homekit demo app;
* [iContactU](https://github.com/rizal72/iContactU) - delivered on Apple Store: reminds you to contact people you ought to.
* [KeychainDemo](https://github.com/dasdom/KeychainDemo) - keychain sharing between an App and it's share extension
* [LayerPlayer](https://github.com/scotteg/LayerPlayer) - explores CALayer and subclasses; written in Swift; also on App Store
* [MyAwesomeChecklist](https://github.com/imod/MyAwesomeChecklist) - checklist app in swift.
* [PNChart-Swift](https://github.com/kevinzhow/PNChart-Swift) - a simple and beautiful chart lib used in Piner and CoinsMan for iOS (Swift Implementation).
* [Pocket Forecast](https://github.com/typhoon-framework/Typhoon-Swift-Example) - typhoon weather example
* [ReactiveSwiftFlickrSearch](https://github.com/ColinEberhardt/ReactiveSwiftFlickrSearch) - an MVVM & ReactiveCocoa Flickr search app in swift.
* [Round & Split](https://github.com/lukhnos/roundandsplit) - a tip calculator in swift.
* [SwiftFlickrApp](https://github.com/synboo/SwiftFlickrApp) - flickr app written in swift.
* [Swift - Game of Life](https://github.com/yonbergman/swift-gameoflife) - Conway's game of life written in Swift with SpriteKit.
* [SwiftHN](https://github.com/Dimillian/SwiftHN) - hacker news app in swift.
* [SwiftNote](https://github.com/mslathrop/SwiftNote) - a simple note taking app with today widget and iCloud syncing.
* [SwiftSingleton](https://github.com/hpique/SwiftSingleton) - an exploration of the Singleton pattern in Swift
* [SwiftWeather](https://github.com/JakeLin/SwiftWeather) - a nice weather app written in swift.
* [TextEthan](https://github.com/thii/TextEthan) - a clone of TextEthan, a messaging app that allows anyone to message you
* [Task](https://github.com/mbcrump/TasksForSwiftWithPersistingData) - a task app written in Swift that is published in the app store.
* [The Oakland Post](https://github.com/aclissold/the-oakland-post) - a full-fledged, 100%-Swift (minus dependencies) news reader.
* [Valio](https://github.com/soffes/valio) - event time table app in swift.
* [Walk Tracker](https://github.com/kevinvanderlugt/Swift-Walk-Tracker) - GPS Walk Tracking app with Core Data
* [Swift 3 Module Template](https://github.com/fulldecent/swift3-module-template) - An opinionated starting point for awesome, reusable Swift 3 modules


# Others
* [App Dev Wiki](http://appdevwiki.com/wiki/show/HomePage)
* [Cocoa](http://cocoa.tumblr.com/)
* [iOS Goodies](http://ios-goodies.com/)
* [iOS Source Code Examples](http://code4app.net/)
* [iOS Dev Weekly](http://iosdevweekly.com/)
* [iOS Developer Tips](http://iosdevelopertips.com/)
* [NSHipster](http://nshipster.com/)
* [NSBlog](https://www.mikeash.com/pyblog/)
* [objc.io](http://www.objc.io/)
* [Peter Steinberger](http://petersteinberger.com/)
* [Subjective-C](http://subjc.com/)
* [Swift Toolbox](http://www.swifttoolbox.io/)
* [RxSwift](https://github.com/kzaher/RxSwift) - Microsoft Reactive Extensions (Rx) for Swift and iOS/OSX platform
* [iOS development with Swift path](http://www.howtocode.io/paths/ios-development-with-swift)
* [That thing in swift](https://thatthinginswift.com/) - the Objective-C patterns we already know translate into Swift
* [Algorithms & Data Structures with Swift — Wayne Bishop](http://waynewbishop.com/swift) - introduction to commonly used data structures and algorithms written in Swift
* [Objective-C to Swift Converter: Swiftify](https://objectivec2swift.com/) - Objective-C to Swift Converter


## Animation
* [Spring](https://github.com/MengTo/Spring)
* [Canvas](http://canvaspod.io/)
* [DKChainableAnimationKit](https://github.com/Draveness/DKChainableAnimationKit) - Easy to read and write chainable animations in Swift


## Documentation
* [jazzy](https://github.com/realm/jazzy/)
* [swift.org] (https://www.swift.org/)
* [swiftdoc-parser](https://github.com/SwiftDocOrg/swiftdoc-parser)


## UI Design
* [iOS Human Interface Guidelines ](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/)
* [UIKit User Interface Catalog](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/UIKitUICatalog/index.html)
* [The iOS Design Guidelines](http://iosdesign.ivomynttinen.com/)
* [design+code](https://designcode.io/)
* [FLEX](https://github.com/Flipboard/FLEX)


## Prototyping
* [Axure](http://www.axure.com/)
* [Briefs](http://giveabrief.com/)
* [Flinto](https://www.flinto.com/)
* [Fluid](https://www.fluidui.com/)
* [Form](http://www.relativewave.com/form/)
* [Framer](http://framerjs.com/)
* [InVision](http://www.invisionapp.com/)
* [Justinmind](http://www.justinmind.com/)
* [Keynotopia](http://keynotopia.com/)
* [Marvel](https://marvelapp.com/)
* [Moqups](https://moqups.com/)
* [Origami](http://facebook.github.io/origami/)
* [Pixate](http://www.pixate.com/)
* [POP](https://popapp.in/)
* [Protoshare](http://www.protoshare.com/)
* [Sketch 3](http://bohemiancoding.com/sketch/)
* [Solidify](http://www.solidifyapp.com/)
* [UXPin](http://www.uxpin.com/)


# Learn Git
* [Git Beginner's Guide for Dummies](http://backlogtool.com/git-guide/en/)
* [Learn Git Branching!](http://pcottle.github.io/learnGitBranching/)
* [A Visual Git Reference](http://marklodato.github.io/visual-git-guide/index-en.html)
* [Try Git: Code School](https://www.codeschool.com/courses/try-git)
* [Git for Everyone](https://www.gitbook.com/book/anotheruiguy/gitforeveryone/details)
* [Learn to use Git and remote repositories in 15 minutes](http://www.nicoschuele.com/posts/learn-to-use-git-and-remote-repositories-in-15-minutes)
