Building To-do List in Swift with CoreData

Hi guys!

With this blog post, I am going to share with you something very awesome! 16 videos on how to build a To-do list in Swift with CodeData.

The knowledge you will gain from these videos can be applied to building many other features for your mobile app. Because by learning how to build a to-do list you will also learn how to:

  • Sketch your feature before you actually start writing code. The importance of wireframing and sketching your features and user interfaces are almost always underestimated and skipped. I would say a developer should spend 70% of his time wireframing his mobile app and thinking through the details of app user interface and user interaction with it and only 30% coding and testing. Otherwise, a developer will spend 30% coding and 70% fixing bugs and re-working staff which results in the wobbly mobile app.
  • Learn how to work with UITableViewController and UIBarButtonItem. Learning how to use Tables to create lists with enable you to create so many other functionalities for your mobile app. You can apply tables to create Menu items, list of images, list of friends, list of messages and so on.
  • Learn to work with Optionals in Swift. If you are not very confident with using Options yet, then one of the videos below will teach you how to define an optional and how to unwrap and use Optionals.  Watch the video about Optionals below and most likely it will answer your questions and make you will feel much more confident about it.
  • And you will learn how to work with CoreData to store data on mobile device. You will learn how to:
    • Model data using Xcode,
    • Store data records in CoreData,
    • Fetch records stored and,
    • Display fetched records in a TableView,
    • As well as deleting data from CoreData.

Is it not awesome? 🙂 

All of these videos are a small part of a very popular video course by Nick Walter on How to Make a Freaking iPhone App – iOS 11 and Swift 4 which teaches a lot more. Many of the topics that this video course covers, are not yet covered in my blog. Like for example:

  • Git and Github,
  • Making Money with iOS,
  • Advanced Swift 4,
  • Recording Audio with the Microphone,
  • ARKit and CoreML

Have a look at the complete list of videos here.

I encourage you to check other 22 video courses that Nick has and follow him as he publishes new video courses regularly.

So here we go. Below is a complete tutorial that will teach you how to build a simple to-do list which can be a good foundation for you to build on and enhance with other useful features and UI elements.

Building to-do list in Swift with CodeData


 Sketch To-Do List

TableView Practice

The To-Do Class

Design the Add To-Do ViewController

 Adding To-Dos


Unwarping Optionals and Subclasses

Complete ViewControler

Displaying the To-Do

Removing a To-Do


Adding to CoreData

Fetching from CoreData

Deleting from CoreData


There are more videos available here.

I hope this blog post is of a great value to you and has helped you to learn what you need to build a to-to list in Swift with CodeData!

I encourage you to check other 22 video courses that Nick has and I am confident that you will find what you need to take your developer skills to the next level!

Happy learning!


  • Michael Rowe

    First off, Awesome! I’ve been struggling for a very long time to try to wrap my head around core data.. and this app made it very very easy. I started with your framework, and started working on an app I’ve been trying to do for YEARS. Having said that, the very last session on deleting data kinda went sideways for me. The app seems to be doing the delete, but when I restart it.. the records are there again. I even stepped thru on debugger, and saw it run the line “context.delete(theCard)” and reload the main view without the data… so I am a bit confused.. any suggestions?

    (btw, I am working with cards not todo items – hence theCard instead to theToDo).

  • Nick Walter

    Hey Nick here, the creator of the videos. I don’t remember giving permission to post videos from my course. Will you please take them down?

    • Hi @Nick Walter. I posted these videos because I have received them from you with a permission to share with my audience and run social media promotion. If I did not get you right, I am so sorry I will take it down immediately. I will send you an email now replying to email you have sent me containing the link to download these videos