Go Class

This course includes:

  • 10 hours on-demand video
  • 12 downloadable resources
  • Full lifetime access
  • Access on mobile and TV

SwiftUI - built a real world application using Core Data

Karin Prater via Udemy

(15 Reviews)


Most courses teach simple concepts and give an overview of all the different features of SwiftUI. In order to master development, there is nothing better than building a fully fletched application. In this course, we will go through all the main steps. I want to showcase the whole development process with SwiftUI. From app idea to MVP. You will get to know my workflow and how I make my design decisions. Follow me along in creating this amazing app.

What are we going to build?

I couple of months ago someone in the co-working space introduced me to the Zettelkasten method. Maybe you heard of the second brain movement or software solutions like roam research. They are all talking about the same problem: you read all this information and you want to keep it at a well organized place for later use. But you never find it again.

The Zettelkasten is a note-taking system developed by a German social scientist, Niklas Luhmann. Luhmann published an insane amount of books and scientific papers.

His trick: the Zettelkasten. It is an archive of notes (Zettelkasten is the German word for slip box). Luhmann had over 80 000 notes in his box at the end. In order to find a piece of information he used an index register and he linked notes to other notes to other notes. Thus following a train of notes feels like following a train of thoughts. You can communicate with the Zettelkasten like it is your second brain.

Doing all the archiving and linking of notes on paper must have been a crazy amount of work. Luckily we will build our very own version of the Zettelkasten: a digital slip box.

It is going to be a big and complex project. Because of that, I think it is perfect to evaluate what SwiftUi can be used for. We will build it together but there is no way to finish everything in this course. I want to give you the opportunity to make this your own app. So you have something you can be truly proud of. Share what you work on, show your cool features or your special design solution. I am very curious what you will come up with.

Why one project

Some concepts like MVVM (Model - View Model - Model) can only be understood, when you see them in a large context. Because you have an example of how things can work together, you can see the benefits of one design decision over another.

Learning one concept at a time and seeing a basic implementation is a good start learning a new framework. But it great to see examples of the same SwiftUI tool for different tasks and in an interplay of a larger project. That is why we will build one massive and complex project in this course.

What’s the deal with Core Data

Mastering Core Data is still a very popular skill for iOS developers. Because Core Data is built on top of SQLite, it is a great and very powerful option for local data storage. Thankfully, Apple made working with Core Data in SwiftUI super convenient. They provide us for example with environmental support and property wrappers like @FetchReqest.

The application we are building is a note-taking system, with keyword tags, links to other notes. It will become quite a complicated data model. We will work with relationships, see how to store rich text and images in core data. We will take advantage of the database to implement advanced search functions.

SwiftUI or not to SwiftUI

SwiftUI is clear, easy to read, and convenient to use. But most people don’t consider SwiftUI as good enough to use it for large and complex apps. They try to develop their first project with SwiftUI but soon get stuck because as the project grows the interplay of different parts of your app becomes more complicated. Managing the data flow is one of the main obstacles when it comes to working with SwfitUi.

This is because of the strong paradigm change. Thinking in declarative programming takes some time to get used to and is best understood by seeing examples of how it actually works.

I want to show you with this project, that it is possible to build amazing apps with SwiftUI. I can best prove this to you by giving you a real example: a fully fletched app written in SwiftUI.

Let’s build that app!

Who this course is for:

  • If you want to learn how to build real applications with SwiftUI
  • If you started learning SwiftUI and you want to get to the next level by working on a larger project
  • If you are a pro iOS developer and want to quickly get up to date with Apple's latest technology SwiftUI
  • If you are an iOS developer who wants to take advantage of SwiftUI to create your very first macOS application

Course Content

7 sections - 57 lectures - 10:06:35 total length

People Also Search

Students Also Bought

Redux in HIndi

Redux in HIndi

Learn Redux with React in Hindi

Flexygo low code

Flexygo low code

Sumérgete en el low-code de la mano de flexygo, y prepárate para las herramientas de desarrollo del futuro.

Start with Competitive Programming - FREE

Start with Competitive Programming - FREE

Become a Competitive Programming Beast

Complete iOS 14, Swift 5 and Machine Learning with CoreML

Complete iOS 14, Swift 5 and Machine Learning with CoreML

Build An Amazing iOS 11 app Using CoreML

Adobe Experience Manager 6.5 - Build Websites and Components

Adobe Experience Manager 6.5 - Build Websites and Components

Build and Apply AEM elements to master components and websites!

Spring для начинающих

Spring для начинающих

Изучение Spring на простых примерах для начинающих


Karin Prater

  • 4 Instructor Rating
  • 17 Reviews
  • 159 Students

I have a Ph.D. in physicist, during which I started to love software engineering. Since I am also passionate about learning I started to build my own learning app.

Since I am also very enthusiastic about design, which is a bit unusual from most physicists, I am putting a strong focus on the UI part.  In my courses, you will jump right into the subject and learn to design by actually designing.

From my former teaching experiences, I know that learning by trying is the most fun. So I will encourage you to use the tools I am showing you directly in your own projects. May they be small or grant.