Skip to content

Gathering all info published, both by Apple and by others, about new framework SwiftUI.

Notifications You must be signed in to change notification settings

Juanpe/About-SwiftUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Repository files navigation

Since past Apple's keynote, whereSwiftUIwas announced, tons of docs, examples, videos and tutorials have appeared. The goal of this repository is to gather all this information having a unique place where looking for info aboutSwiftUI.

SwiftUIis an innovative, exceptionally simple way to build user interfaces across all Apple platforms with the power of Swift. Build user interfaces for any Apple device using just one set of tools and APIs. With a declarative Swift syntax that’s easy to read and natural to write, SwiftUI works seamlessly with new Xcode design tools to keep your code and design perfectly in sync. Automatic support for Dynamic Type, Dark Mode, localization, and accessibility means your first line ofSwiftUIcode is already the most powerful UI code you’ve ever written.

Twitter

Table of contents

 by Apple

📚 Documentation

  • SwiftUI
  • Official doc
    • Essentials
      • Introducing SwiftUI.SwiftUI is a modern way to declare user interfaces for any Apple platform. Create beautiful, dynamic apps faster than ever before.
      • App Structure and Behavior.Define the entry point and top-level organization of your app.
    • User Interface
      • Views and Controls.Present your content onscreen and handle user interactions.
      • View Layout and Presentation.Combine views in stacks, generate groups and lists of views dynamically, and define view presentations and hierarchy.
      • Drawing and Animation.Enhance your views with colors, shapes, and shadows, and customize animated transitions between view states.
      • Framework Integration.Integrate SwiftUI views into existing apps, and embed AppKit, UIKit, and WatchKit views and controllers into SwiftUI view hierarchies.
    • Data and Events
      • State and Data Flow.Control and respond to the flow of data and changes within your app’s models.
      • Gestures.Define interactions from taps, clicks, and swipes to fine-grained gestures.
    • Previews in Xcode
      • Previews.Generate dynamic, interactive previews of your custom views.
    • Develop Apps with SwiftUI

📹 WWDC videos

🌟 most interesting

👩🏼‍🏫 Tutorials

🌎 by the community

📗 Books

🎓 Courses

🔗 Websites

📰 Articles

🤖 Unit Testing

📱 UI Testing

🔨 Xcode Extensions

  • nef- This Xcode extension enables you to make a code selection and export it to a snippets.Available on Mac App Store.
  • SwiftUI Recipes- companion app and Xcode extension for adding 70+ community-sourced SwiftUI recipes to your code.Available on Mac App Store.

📦 Repositories

  • 100 Days of SwiftUI & CombineRepo to follow along withHacking with Swift's100 Days of SwiftUIChallenge.
  • Currency Converter & CalculatorA currency application for most of the currencies in the world. You can quickly convert and make mathematical operations between currencies.
  • SwiftSunburstDiagramA library written with SwiftUI to easily render sunburst diagrams given a tree of objects.
  • SwiftUI.SwiftUIFramework Learning and Usage Guide. 🚀
  • SwiftUITodo.An example to-do list app using SwiftUI which is introduced in WWDC19.
  • KeyboardAvoiding.A SwiftUI view that manages a UIViewController that responds to keyboard events with modified additionalSafeAreaInsets.
  • DispatchStore.Swift package that implements an operation based, multi-store à-la Flux for SwiftUI.
  • GitHubSearchWithSwiftUI.SwiftUI based GitHubSearch example.
  • SwiftUI-MovieDB.SwiftUI MovieDB prototype app built with Xcode 11 Beta & macOS 10.15 Catalina.
  • WWDCPlayer.🤖 WWDC19 player using SwiftUI.
  • MyDogs.A simple SwiftUI example for testing Lists, BindableObject, State management and Network.
  • MovieSwiftUI.SwiftUI & Combine app using MovieDB API.
  • CryptoTickerSwiftUI.Example project using a websocket API and SwiftUI to displays latest BTC-USD trade. (Latest Bitcoin price)
  • SwiftUIRedux.Comprehensive Redux library for SwiftUI, ensures State consistency across Stores with type-safe pub/sub pattern.
  • SwiftUI-Combine.This is an example project of SwiftUI and Combine using GitHub API.
  • SwiftUITimeTravel.An experimental time traveling state store for SwiftUI.
  • SwiftUI_Jike.SwiftUI imitation app interface (Build Jike App with SwiftUI).
  • 2048.A 2048 game writing with SwiftUI.
  • SwiftUI-Landmarks.Introducing SwiftUI. A declarative way to create User Interfaces with Swift.
  • SwiftUI-Flux.🚀 This is a tiny experimental application using SwiftUI with Flux architecture.
  • SwiftUI-by-Examples.Examples of new SwiftUI framework.
  • SwiftUICalculator.A calculator app using SwiftUI which is introduced in WWDC19.
  • InstaFake-Swift-UI.Swift UI Demo for an instagram copy.
  • SwiftUITheme.A first idea to style SwiftUI Views.
  • Lists_-_Navigation_SwiftUI.Exploration of Apple Developer's SwiftUI tutorial, detailing how to build lists and enable navigation between views with #SwiftUI.
  • injectable.A micro framework that leverages Swift Property Wrapper to implement the Service Locator pattern.
  • SwiftWebImage.🚀SwiftUI image downloader for BindingObject with performant LRU mem/disk cache.
  • NetworkImage.swift.Basic NetworkImage support for SwiftUI via Kingfisher
  • SwiftUI-Combine-todo-example.A to-do list app using SwiftUI and combine with restful api.
  • Bindings.swift.Re-implementation of @binding and @State (from SwiftUI) myself to better understand it.
  • Contacts.swift
  • CombineUnsplash.Exploring SwiftUI + Combine + Result by using Unsplash API, with detailed code explanation.
  • RemoteImage.swift.Rough sketch of SwiftUI RemoteImage using AlamofireImage.
  • CombineFeedback.Unidirectional reactive architecture using new Apple Combine framework.
  • Harvest.🌾 Harvest: Apple's Combine.framework + State Machine, inspired by Redux and Elm.
  • Redux HandlingUserInput.HandlingUserInput tutorial showcasing redux style of state and change management.
  • SwiftUI-Cheat-Sheet.SwiftUI Cheat Sheet.
  • swiftui_shadow_and_border.swift.Testing SwiftUI. Adding shadow and corner radius to a View. Strange behavior depending on View background color.
  • SwiftUI-MVVM.Sample iOS project built by SwiftUI + MVVM and Combine framework using GitHub API.
  • SwiftUI-Circular.swift.Rough attempt at creating a container view that lays out its children in a circle.
  • NotesApp.swift.A notes app written in >100 lines of swift using SwiftUI.
  • UnsplashSwiftUI.UnsplashSwiftUIA simple app powered by SwiftUI and Unsplash 🚀
  • AniTime.Anime schedule, korean subtitle for iOS with SwiftUI + Combine and MVVM architecture
  • Fluxus.Flux for SwiftUI, inspired by Vuex.
  • ChartView in SwiftUI.Easy to use animated Chartview supportingBar and Piecharts
  • Weather.🌤 A simple SwiftUI weather app using MVVM.
  • Chat.💬 A basic SwiftUI chat app that leverages the newURLSessionWebSocketTask.
  • toBlockingArray for Combine.Acts like RxBlocking, for writing tests using the Combine framework.
  • ImageWithActivityIndicator.SwiftUI view that download and display image from URL and displaying Activity Indicator while loading.Demo
  • 🌯🌯 Burritos.A collection of Swift Property Wrappers (formerly "Property Delegates" ).
  • HackeryA HackerNews client made using SwiftUI.
  • SwiftUI-Redux-Todo ExampleAn opinionated React/Redux inspired Todo example.
  • Currency Converter.A Currency converter app.
  • bottombar-swiftui.BottomBar component for SwiftUI
  • DealStack.Simple card stack implemented with SwiftUI
  • SwiftUI-PathAnimations.Tools for SwiftUI that helps perform Path and Shape animations
  • CombineBookSearch.SwiftUI + Combine + MVVM architecture.
  • YanxuanHD,The iPad version of ' võng dễ nghiêm tuyển ' iOS app
  • Babylon demoMVVM with a project-level separation of layers and a leafViewframework.
  • RKCalendarSimple SwiftUI Calendar / Date Picker.
  • MorphiAdditionalShapefor SwiftUI.
  • VideoPlayer,A video player for SwiftUI.
  • DrawerView-SwiftUIA drawer view with certain customizability implemented by SwiftUI.
  • SwiftUIXAn extension to the standard SwiftUI library.
  • SwiftUI-Router.A routing system proof-of-concept based on React Router.
  • SwiftUI ColorSlider.Dynamically select a color from a color gradient slider.
  • ⌨️ KeyboardObservingA Combine-based solution for observing and avoiding the keyboard in SwiftUI.
  • ☑ Calculator ChecklistRecreation of calculator-checklist project in SwiftUI.
  • ArrivalBART app writen entirely with SwiftUI
  • SFA Small SFSymbols SwiftUI Enum.
  • Pull to RefreshSwiftUI pull to refresh for List, NavigationView
  • ConnectFourA basic Connect Four game built with SwiftUI
  • Modal ViewA simple and safe way to display Modal views in SwiftUI
  • SwiftUI CompatKit🤘 A framework to add missing UIKit Controls to SwiftUI 🤘
  • SDWebImageSwiftUI.SDWebImage integration for SwiftUI. Supports async image loading, caching, as well as animated image playback like GIF, APNG and Animated WebP.
  • FlipClock-SwiftUIFlip clock implementation in SwiftUI
  • CountdownFilmClutter-SwiftUIOld fashioned countdown film clutter in SwiftUI
  • 🇹🇷SwiftUI-PresentationSwiftUI explained in Turkish and prepared a demo application.
  • Sliders.Custom sliders and tracks for SwiftUI.
  • 📖 PagesA lightweight, paging view solution for SwiftUI.
  • 🚀 PartialSheetA SwiftUI modifier to show a Partial Modal Sheet based on his content height.
  • 🕒 Clock time picker.A clock face with draggable hands to pick the hour and minutes of your date.
  • 🇨🇳SwiftUI-WeChatLearn how to make WeChat with SwiftUI. WeChat 7.0 🟢
  • Weather App with MVVM and CoreML🚀 This demo is very simple project, which designed to understand SwiftUI. It includes Main screen, DayList screen and detail screen.
  • VergeA Store-Pattern based data-flow architecture for iOS Application with UIKit / SwiftUI. Inspired by Redux and Vuex.
  • Clean Architecture for SwiftUIA demo project showcasing the production setup of the SwiftUI app with Clean Architecture.
  • SwiftUI-IntrospectIntrospect underlying UIKit components from SwiftUI.
  • 🗯️Lazy-Pop-SwiftUIModifier that allows swiping on any part of the screen to start an interruptible pop animation to the previous view.
  • 🔥Login-with-Apple-Firebase-SwiftUISwiftUI component that handles logging in with Apple into Firebase. Complete tutorial in the README.
  • Awesome-SwiftUIA curated list of awesome SwiftUI tutorials, libraries, videos and articles.
  • GrowingTextView-SwiftUIGrowing text view implemetation in SwiftUI
  • 🚀 ActionOverA SwiftUI modifier to show an Action Sheet on iPhone and a Popover on iPad and Mac. Write just once the actions for the menus.
  • 🃏CardStackA easy-to-use SwiftUI view for Tinder like cards on iOS, macOS & watchOS.
  • Floating Tab BarA floating tab bar made in SwiftUI
  • iOS Calculator Clone for iPadOS using SwiftUIA clone of the native iOS built-in Calculator for iPadOS using SwiftUI, mimicking the native Calculator UI and funtions.
  • StepperViewSwiftUI iOS component for Step Indications
  • 🔆 UrbanVillageProjectScreensRecreations of the Urban Village Project concept screens.
  • 🍱 SharedObjectA new property wrapper for SwiftUIObservableObject.
  • 🧭 BetterSafariViewA better way to present aSFSafariViewControlleror start aASWebAuthenticationSessionin SwiftUI.
  • MGFlipViewallows to create flipping view in easy way without worrying about flipping animation and flipping logic.
  • SwiftUIListSeparatorView extension to hide/modify List separators in SwiftUI iOS13 and iOS14.
  • InfiniteScrollerHorizontal and Vertical collection view for infinite scrolling that was designed to be used in SwiftUI
  • SwiftUI TooltipSwiftUI Tooltip implementation that works on all platforms and supports SwiftUI v1.0
  • SVG to SwiftUISVG to SwiftUI Shape converter
  • ClendarClendar is an open-source & universal calendar app, written in SwiftUI.
  • Corona Widget😷 open-source iOS 14 widget to get latest stats on Covid-19.
  • URL-Image🔗 Open-source solution for quickly displayingImagesvia URL.
  • SFSafeSymbolsA SF Symbols enum that safely automatically updates upon build.
  • Confetti-View🎉 A simple confetti view for apps using SwiftUI.
  • Open Source SwiftUI Documentation🚀🌎 open-source SwiftUI documentation!
  • SwiftUIChartsA simple line and bar charting library that supports accessibility written using SwiftUI.
  • MarkdownUIRender Markdown text in SwiftUI.
  • InstasoupInstagram home page SwiftUI implementation.
  • FlowStacksCoordinator pattern in SwiftUI.
Layout 🎛
  • ASCollectionViewA SwiftUI collection view with support for custom layouts.
  • QGridThe missing SwiftUI collection view.
  • FlowStack.A grid layout component.
  • GridStack.A flexible grid layout view for SwiftUI.
  • WaterfallGrid.A waterfall grid layout view for SwiftUI.
  • Grid.SwiftUI Grid with custom styles.

🖥 Videos

📱 Apps

❤️ Contributing

Feel free to contribute!! This repo is yours.