We may earn an affiliate commission when you visit our partners.
Nikita Thomas

Building real apps is always the most efficient way to quickly learn new software engineering concepts. In this course you will learn how to use SwiftUI for more than just playing with small prototypes.

Read more

Building real apps is always the most efficient way to quickly learn new software engineering concepts. In this course you will learn how to use SwiftUI for more than just playing with small prototypes.

You will be building a functional Netflix clone that has most of the features of the real app. The focus of this course is learning & perfecting SwiftUI concepts. We will be building all of the visual UI components from the Netflix app. We won’t handle networking and we’ll be loading our data locally to show up within the UI. The app is built with MVVM and you'll be able to easily integrate your own networking layer.

Some parts of the course require iOS 14 and Xcode 12.

Many lessons can be followed using Xcode 11 and the important concepts learned will still apply to iOS 13. But some views & functionality are only available in iOS 14 using Xcode 12. For example, the ‘Grid’ view is only availably in iOS 14+. For iOS 13, you would have to build your own implementation using a combination of VStacks & HStack. What is SwiftUI 2? Apple has provided this new framework as a way to quickly build beautiful user interfaces for any Apple device using just one set of easy-to-use tools. With the new declarative syntax of SwiftUI, it takes less code to keep your code and design perfectly in sync.

SwiftUI works seamlessly with new Xcode design tools and significantly speeds up development by showing your code changes in real time.  

After the latest features for iOS 14 announced at New views, new functionality, less bugs, and faster performance with Swift 5. No excuses to skip out on SwiftUI now. Start learning today.  This course is in no way affiliated with Netflix, Inc. No source code of the real Netflix application is ever shown. This code is my interpretation of how I would build the app using SwiftUI.

Enroll now

What's inside

Syllabus

Introduction
Course Overview
Creating an Xcode project for SwiftUI
Building The 'Home' View
Read more

VideoPlayer link: https://github.com/wxxsw/VideoPlayer

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Uses SwiftUI, which allows developers to build user interfaces for any Apple device using one set of tools
Focuses on SwiftUI concepts, which are essential for modern iOS app development and UI design
Employs MVVM architecture, which is a popular design pattern for structuring iOS applications
Requires iOS 14 and Xcode 12 for some parts, so learners may need to update their development environment
Teaches how to build a custom TabView, which is a fundamental component in many iOS applications
Uses GeometryReader, DragGestures, and offsets to dynamically move views, which are useful skills for creating interactive UIs

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Build a netflix clone with swiftui 2

According to learners, this course offers an excellent practical application of SwiftUI by focusing on building a real-world Netflix clone. The curriculum provides a structured approach, deeply exploring complex UI components and the MVVM architectural pattern within a project context. It also covers advanced SwiftUI features like gestures. However, prospective students should be aware that the course requires iOS 14 and Xcode 12. Furthermore, it focuses primarily on the user interface and does not cover networking, meaning supplemental learning is needed for full app development.
Content is broken down into small steps.
"The syllabus shows a very detailed step-by-step process for building the app."
"Each part of the UI seems to have dedicated lessons."
"Appreciate the granular approach to building features."
Explores advanced SwiftUI features.
"Looks like the course delves into advanced topics like drag gestures."
"Excited to learn about implementing complex interactions."
"The syllabus mentions cool stuff like GeometryReader and DragGestures."
Concentrates on UI components and MVVM.
"The focus on building all the UI components was very thorough."
"Learning MVVM in the context of this project was really helpful."
"Great for mastering SwiftUI views and architectural patterns."
Focuses on building a practical app clone.
"Building the Netflix clone is such a great way to learn SwiftUI in a practical way."
"I loved working on a project that feels like a real app."
"The hands-on approach of cloning Netflix helped solidify my understanding."
Focuses only on UI, no networking covered.
"It's important to note that the course only covers the UI side; networking isn't included."
"Wish it had touched upon integrating real data via APIs."
"Plan to supplement this course if you need to learn networking."
Requires specific, newer software versions.
"Need to be aware that this course requires iOS 14 and Xcode 12."
"Make sure you have the right versions installed before starting."
"Some parts won't work on older iOS/Xcode versions."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in SwiftUI 2 - Build Netflix Clone - SwiftUI Best Practices with these activities:
Review SwiftUI Layout Fundamentals
Reinforce your understanding of SwiftUI layout principles like Stacks, Frames, and Alignment to build complex UIs effectively.
Browse courses on SwiftUI
Show steps
  • Study Apple's SwiftUI documentation.
  • Practice building simple layouts.
  • Experiment with different alignment options.
Read 'SwiftUI by Tutorials'
Deepen your understanding of SwiftUI concepts and best practices by working through practical examples and tutorials.
Show steps
  • Obtain a copy of 'SwiftUI by Tutorials'.
  • Work through the introductory chapters.
  • Apply the concepts to your Netflix clone project.
Read 'Thinking in SwiftUI'
Gain a deeper understanding of the SwiftUI framework and its underlying principles.
View Thinking in SwiftUI on Amazon
Show steps
  • Obtain a copy of 'Thinking in SwiftUI'.
  • Read the chapters on data flow and state management.
  • Apply the concepts to your Netflix clone project.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Write a Blog Post on SwiftUI Best Practices
Reinforce your learning by summarizing key SwiftUI best practices and sharing them with others.
Show steps
  • Identify key SwiftUI best practices.
  • Write a clear and concise blog post.
  • Include code examples and illustrations.
Expand the Netflix Clone with a Watchlist Feature
Solidify your SwiftUI skills by adding a new feature to the Netflix clone, such as a watchlist or user profile.
Show steps
  • Design the UI for the watchlist feature.
  • Implement data storage for the watchlist.
  • Integrate the watchlist into the existing app.
Recreate UI Components from Other Apps
Sharpen your SwiftUI skills by attempting to replicate UI components from other popular apps.
Show steps
  • Choose a UI component to recreate.
  • Analyze the component's structure and behavior.
  • Implement the component in SwiftUI.
Follow Advanced SwiftUI Animation Tutorials
Enhance your app's user experience by learning advanced SwiftUI animation techniques.
Show steps
  • Find tutorials on advanced SwiftUI animations.
  • Implement the animations in your Netflix clone.
  • Experiment with different animation parameters.

Career center

Learners who complete SwiftUI 2 - Build Netflix Clone - SwiftUI Best Practices will develop knowledge and skills that may be useful to these careers:
iOS Developer
An IOS Developer builds applications for Apple's mobile operating system. This course helps you gain practical experience with SwiftUI by building a Netflix clone. By creating visual UI components, you build a foundation for creating more efficient and user-friendly apps. The focus on SwiftUI concepts in this course makes it an ideal starting point for anyone looking to become an IOS Developer.
Swift Developer
A Swift Developer specializes in using Apple's Swift programming language to create applications. This course emphasizes the use of SwiftUI, which is a key framework for Swift development. Building a fully functional Netflix clone from scratch provides invaluable experience in creating user interfaces. This course may be useful to you as a Swift Developer because it teaches you how to build UIs with SwiftUI, and to integrate your own networking layer.
Mobile App Developer
A Mobile App Developer is responsible for designing, developing, and maintaining applications on mobile devices. This course directly addresses the practical aspects of mobile app development using SwiftUI. By learning how to build a complete application like a Netflix clone, the learner gains skills in UI design, data handling, and state management. This course may be useful to you as a Mobile App Developer because it provides experience in building a real-world application.
UI Engineer
A UI Engineer focuses on the implementation of user interfaces for applications. This course helps you become a UI Engineer because it focuses on creating visual UI components with SwiftUI. Building a Netflix clone provides hands-on experience with UI design and development. The course's emphasis on MVVM architecture also provides a solid foundation for building scalable and maintainable UIs.
Front-End Developer
A Front End Developer is responsible for building the user interface and user experience of websites and applications. This course provides a deep dive into SwiftUI, a modern framework for building UIs across Apple platforms. By building a Netflix clone, the learner gains experience in creating complex layouts, handling user interactions, and managing application state. This course may prove useful as a Front End Developer because it focuses on front end technologies and how to work with them.
Software Engineer
Software Engineers are involved in the design, development, and testing of software applications. This course provides practical experience in building a real-world application using SwiftUI. By working on a Netflix clone, you learn how to structure a project using MVVM architecture, handle data, and create user interfaces. In this way, this course might be useful to a Software Engineer.
Application Developer
Application Developers design, code, and test applications for computers and other devices. This course provides hands-on experience in building a functional application from scratch using SwiftUI. By learning how to create UI components, handle data, and manage application state, you build skills relevant to application development. This course may prove helpful to Application Developers because it helps them create user interfaces with SwiftUI.
Full-Stack Developer
A Full Stack Developer works on both the front end and back end of web applications. While this course focuses primarily on the front end with SwiftUI, the principles of MVVM architecture and data handling are applicable to full stack development. The experience gained in building the Netflix clone helps you understand how to structure a complex application and integrate it with a back end. This course may be useful to Full Stack Developers by helping them create user interfaces with SwiftUI.
Mobile Architect
A Mobile Architect designs the structure and architecture of mobile applications. Although typically requiring a master's degree, this course emphasizes MVVM architecture, which helps you learn how to structure a complex application. Building the Netflix clone provides insight into how different components interact and how to manage application state. Because of this, this course may be useful to a Mobile Architect.
Mobile Lead
A Mobile Lead typically requires experience and may require an advanced degree. This course offers a chance to work with a Netflix clone, which can help you to create user interfaces for a large range of Apple products. Using SwiftUI allows you to cut down on development time. The course can also help a Mobile Lead learn how to build a SwiftUI Tab Bar from scratch and customize it as a UITabBar
Project Manager
A Project Manager is responsible for planning, executing, and closing projects. While this course is technical in nature, understanding the development process and the technologies involved can help a project manager better manage mobile app development projects. By gaining insight into SwiftUI and the MVVM architecture, a project manager can communicate more effectively with developers. This course may be useful to a Project Manager because it shows how a software project is built from the ground up.
Product Manager
A Product Manager is responsible for the strategy, roadmap, and feature definition of a product. While this course focuses on the technical aspects of building a mobile app, understanding the capabilities of SwiftUI and the development process helps a product manager make informed decisions about product features and timelines. This course may be useful to a Product Manager because it provides insight into the technical feasibility of different features.
Quality Assurance Tester
A Quality Assurance Tester is responsible for testing software applications to ensure they meet quality standards. This course provides insight into the development process and the technologies used to build mobile apps. Understanding SwiftUI and the MVVM architecture can help a quality assurance tester better understand the application's functionality and identify potential issues. It may be useful to testers of SwiftUI applications.
Technical Recruiter
A Technical Recruiter specializes in finding and recruiting candidates for technical positions. While this course is not directly related to recruiting, understanding the technologies and skills involved in mobile app development can help a technical recruiter better identify qualified candidates. By learning about SwiftUI and the MVVM architecture, a technical recruiter can better assess a candidate's technical abilities. It may be useful for this purpose.
Technical Writer
A Technical Writer creates documentation for software applications. While this course is not directly related to technical writing, understanding the technologies and concepts involved in mobile app development can help a technical writer create more accurate and informative documentation. By learning about SwiftUI and the MVVM architecture, a technical writer can better explain the application's functionality and usage. It may be useful in this way.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in SwiftUI 2 - Build Netflix Clone - SwiftUI Best Practices.
Provides a comprehensive guide to SwiftUI, covering everything from basic views to advanced animations. It's a great resource for understanding the fundamentals and building practical skills. The book is particularly helpful for those new to declarative UI programming. It serves as both a learning tool and a valuable reference as you progress through the course.
Dives deep into the mental model behind SwiftUI, helping you understand how to approach UI development in a declarative way. It's particularly useful for developers transitioning from imperative UI frameworks. While not a beginner's guide, it provides valuable insights into the underlying principles of SwiftUI. It is best used as additional reading to deepen understanding.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser