SwiftUI Masterclass: Build To Do List App

  Рет қаралды 105,289

iOS Academy

iOS Academy

Жыл бұрын

In this SwiftUI masterclass, you will learn to build a full fledged iPhone app using Swift, SwiftUI, and Xcode. We will be building a functional to do list app from scratch. We'll explore the various constructs of building beautiful User Interfaces for your app. Next, we will integrate Google Firebase as a backend for the app. This backend will let the user Register and Log In to your new app.
We'll dive into the world of saving data into a database - to do list items - and getting the users saved information. You'll get a chance to build reusable components like headers, Calendars, buttons, and more.
Additionally, we'll get into the details of working with data in a declarative UI framework like SwiftUI. We'll leverage best practices with ViewModels, StateObjects, Bindings, and more.
By the end of this FREE masterclass, you'll have a beautiful and functional SwiftUI iPhone app to show off to your friends.
You can access the full project code by supporting on Patreon: iosacademy.io/resources
💻 Source Code: / iosacademy
🎥 Subscribe for more: kzfaq.info?su...
😎 Like my teaching style? Check out some of my most popular courses! courses.iosacademy.io
👉🏼 Connect (personal LinkedIn) / afrazsiddiqui
🚀 Follow on LinkedIn / ios-academy
** Popular Series
Building Instagram: courses.iosacademy.io/p/build...
Building TikTok: / @iosacademy
SwiftUI for Beginners: ios-academy.teachable.com/p/s...
** Get Skillshare free for 2 Months and learn iOS
www.skillshare.com/r/user/afraz
** Manage all your investments from app earnings on Betterment!
bit.ly/3eBwlI9
** Grow your own KZfaq tech channel with TubeBuddy:
www.tubebuddy.com/iosacademy
#swift

Пікірлер: 102
@timbass9822
@timbass9822 9 ай бұрын
The Firebase integration made this course much better than other starter classes. Thank you.
@user-oe9fk6kk7l
@user-oe9fk6kk7l 7 ай бұрын
I really appreciate how not basic this tutorial is. I am a programmer knowing at least 5 languages and know 3 of them to an advanced level. I am just looking to build myself something for fun. I want a full app with proper coding components, not an app that does nothing but dealing cards with no text field, no traditions, no nothing.
@WeavingMocha
@WeavingMocha 3 ай бұрын
Lol the pause at 53:37 had me cracking up... Really great work this is exactly what I was hoping to find. Perfect paced overview that gives me a good idea where to start.
@timbass9822
@timbass9822 9 ай бұрын
@IOS Academy, Thank you for this great tutorial. For an retired experienced and passionate programmer, this tutorial was excellent. The best so far for a novice SwiftUI person. I did a few things differently along the way in the view-models and the views, including getting the currentUserId directly in the part where you made it a bit overly complex, but hey, that's me. Very well done and much appreciated! Looking forward to the next one from you && subscribed.
@nicokalkusinski9320
@nicokalkusinski9320 9 ай бұрын
I just finished the course and I've a working app on my computer :) Thank you so much for that. It was an amazing introduction to SwiftUI for me, I like starting big so I will pick so many things on the way and it was a perfect place for me to start. You're an incredible teacher and the pace of the course suited my learning so well. What I would recommend to do is to build upon the project they already have after following the video. I personally added "rename" feature, history of deleted items, preserved for 3 days, forgot the password feature (also comes with not being able to create a new account on the same email) and notification when the item is overdue. It's not that hard to implement after having a working base project and I hope everybody could learn something new :)
@DavesTechChannel
@DavesTechChannel Жыл бұрын
Great tutorial that covers the basics of MVVM, SwiftUI and Firebase.
@iOSAcademy
@iOSAcademy Жыл бұрын
Thanks!
@leftyballsac
@leftyballsac 11 ай бұрын
brilliantly done...very helpful for me to brush up on my swift skills after some time away while also learning something new. Very clear, very simple explanations
@HansenHansen-cy5gm
@HansenHansen-cy5gm 2 ай бұрын
I'm so glad I stumbled upon this gem.
@alistairop3098
@alistairop3098 Жыл бұрын
hey man this really works on my device! Thanks for sharing.
@debasismandal1924
@debasismandal1924 9 ай бұрын
Thanks a lot! Awesome content🔥 Even though a todo list app sounds simple and basic but your tutorial is really helpful to understand the unique concepts of SwiftUI. Especially the integration with Firebase, your explanation was very intuitive on that.
@iOSAcademy
@iOSAcademy 9 ай бұрын
Glad it was helpful!
@supondo
@supondo 9 күн бұрын
Great tutorial, congratulations!
@nicolaspedra4195
@nicolaspedra4195 7 ай бұрын
amazing video, thanks bro!
@OhmVibe
@OhmVibe 4 ай бұрын
Fantastic tutorial! I've been tasked by the startup I work for to build a prototype for a new Vision Pro app, and this really helped me get up to speed with X Code and Swift/SwiftUI. 🔥🚀
@iOSAcademy
@iOSAcademy 4 ай бұрын
Glad it was helpful!
@ValentinJimeno
@ValentinJimeno 2 ай бұрын
Great tutorial!
11 ай бұрын
Hey there, great masterclass!
@patrickschopfer4404
@patrickschopfer4404 11 ай бұрын
🔥🚀 Great Video. Thank you
@finnalandem
@finnalandem 2 ай бұрын
The padding @ 49:28 worked perfectly for me.
@borysgwia6100
@borysgwia6100 9 ай бұрын
great thank you for your effort !
@vivekdhole2675
@vivekdhole2675 9 ай бұрын
Very helpful thank you ✌
@matthewronderos7428
@matthewronderos7428 Жыл бұрын
thanks for your help.
@meunomeecriss
@meunomeecriss Жыл бұрын
🔥🚀 Hey you! Thanks for this amazing video. I have been studying the basic of Swuift and swuifUI
@Revan9991
@Revan9991 Жыл бұрын
🔥🚀 Much appreciated!
@clemmasterpwnzall
@clemmasterpwnzall 6 ай бұрын
Altough this video and tutorial is great and I apreciate it to the fullest, I find it a bit quick sometimes. From a teaching perspective it would be benefitial to navigate a little slower, especiale when for example cutting parts of code and pasting them when outsourcing to a new file. I am a sw developer myself, I know how things are when you are in the "tunnel" but for people outside, especially when not used to the language and IDE, it is now always easy to follow. Still, thanks a lot for the video!
@IgorOdaryuk
@IgorOdaryuk Жыл бұрын
Thank you!
@7themryze638
@7themryze638 5 ай бұрын
Thanks for your tutorial!
@iOSAcademy
@iOSAcademy 5 ай бұрын
You're welcome 😊
@moonice5941
@moonice5941 6 ай бұрын
Perfect toturial
@iOSAcademy
@iOSAcademy 6 ай бұрын
Thanks
@surajchand10
@surajchand10 9 ай бұрын
really helpful .
@bennyscode5856
@bennyscode5856 4 ай бұрын
great tutorial, THANKS.
@iOSAcademy
@iOSAcademy 4 ай бұрын
You're welcome!
@user-uo9nx4tz8u
@user-uo9nx4tz8u Жыл бұрын
Every day iOS Academy the best of the best
@evan_ry
@evan_ry 9 ай бұрын
All that jazz 🤙🏻
@satendev
@satendev 5 ай бұрын
Awesome tutorial, Thanks a lot sir
@iOSAcademy
@iOSAcademy 5 ай бұрын
You are most welcome
@dElectroBuddha
@dElectroBuddha 3 ай бұрын
Great video, would be nice to add chapter markers for each section.
@LucasAgustinLeone
@LucasAgustinLeone 4 ай бұрын
When I add firebase package auth doesn't appear, why?
@vitaliyhalai6017
@vitaliyhalai6017 11 ай бұрын
Reel reel good 👍❤
@bmsrangel1
@bmsrangel1 Жыл бұрын
Hey! Great video! Thank you very much! I have a question, though. When we open the app after the user is already logged, we have the Launch Screen being displayed, then we have the Login Screen displayed for a split of a second and then we have the ToDoListView page. I understand why it's happening, but I wonder how to prevent this to happen. Is there a way to "delay" the launch screen transition, so this verification is first executed in background? Or is there a way to dismiss the launch screen programmatically? Thanks!
@fernandokhounphithach3551
@fernandokhounphithach3551 9 ай бұрын
Great video, can you update the Chat app to this latest swift?
@sh3r1p49
@sh3r1p49 2 ай бұрын
your voice reminds me of bucky from youtube also who taught me on android programming before. 😂
@kate_besel
@kate_besel 2 ай бұрын
awesome so far! i just finished the first lesson in this video and i feel like i’ve already progressed in my xcode knowledge. highly recommend
@denversupermarket7484
@denversupermarket7484 Жыл бұрын
View models start: 51:00
@RealCPI
@RealCPI 7 ай бұрын
How do you get the iphone model at the left side of the screen
@ignordizlaykov5193
@ignordizlaykov5193 2 ай бұрын
I like it! You're beautiful!
@adnanboxwala2129
@adnanboxwala2129 10 ай бұрын
40:41 Why does the RegisterView look fine in the Xcode preview, but is shifted slightly downwards in the simulator?
@aidenkamph
@aidenkamph 8 ай бұрын
On the login screen, I am not seeing the error message when it is supposed to pop up. I have been getting "Unable to simultaneously satisfy constraints." with a bunch of NSLayoutConstraint messages and have not been able to figure it out for two days. Any help would be appreciated, thanks!
@imanimansfield5456
@imanimansfield5456 Жыл бұрын
why when I add swiftui files it gives me an error? but when it's only on Content View it Works?
@Septix
@Septix Жыл бұрын
This would be clutch as a beginner course if we just switch Firebase to SwiftData or some local db. At least that's my perspective as a mobile dev trying to pick up swift as soon as possible and not trying to get bogged down with creating a firebase account. Not sure how much that helps but some feedback :) Loving the other videos nonetheless!
@guiflam4854
@guiflam4854 11 ай бұрын
It’s really simple to have a local db I could help you
@swiftsifu
@swiftsifu 10 ай бұрын
This was filmed before SwiftData was announced. No doubt they'll be a Swift Data course int he future.
@user-zs3kn3wf9j
@user-zs3kn3wf9j Жыл бұрын
Verifying ios-sdk while adding package is just stucked.
@bernardonigbinde
@bernardonigbinde 9 ай бұрын
1:42:27 Isn't dueDate >= Date() correct? I take it we're creating items to do after now (current timestamp). Anything else would be now or in the past. Hopefully I'm thinking about this correctly.
@sijanpoudel1329
@sijanpoudel1329 4 ай бұрын
after adding firebase packages , preview is not working .
@RunnerShane-nj8xz
@RunnerShane-nj8xz 17 күн бұрын
How to solve the issue when the keyboard is opened then new around here view covers up the login form
@finnalandem
@finnalandem 2 ай бұрын
For some reason I can't have MainView in the same folder as ToDoListApp, MainView preview works when it's in the root folder and ToDoListApp is in Other, but if I move MainView anywhere else, for instance the Views folder, it will not run the preview and gives the error "The preview provider must belong to at least one target in the current scheme in order to use previews". How can I go about resolving this and preventing it again in future projects?
@mEtAlMaNiAc787
@mEtAlMaNiAc787 Жыл бұрын
great do you have this in more detail or do you know where I can find it. I've been trying to figure out how to sort them in date last opened, and date created?
@Grepsoft
@Grepsoft 9 ай бұрын
you can provide a closure to a sort function and within that sort by however you like.
@saikrishnapatha4386
@saikrishnapatha4386 2 ай бұрын
source code available for download? for reference
@ryanhofmann7644
@ryanhofmann7644 10 ай бұрын
🔥🚀
@spetx-zo8vu
@spetx-zo8vu Ай бұрын
Hey so far the video is going great but at around 1:12:00 when you imported the FirebaseFirestore, for me it says it is missing required model ‘FirebaseFirestoreIternalWrapper’ not sure why it is I followed the steps and everything not sure if you could help me out.
@turgenevslife9379
@turgenevslife9379 11 ай бұрын
I have a problem with fetching profile data, probably it's connected to Firebase rules, somebody help me pls
@MrSem1989
@MrSem1989 2 ай бұрын
I seem to have a small bug, where when I tap an item as done it duplicates, and only than I can delete the duplicate. The other item just keeps existing. Can you help me out some way? I double checked the code and it seems good but I am really lost on how to fix it.
@emegbert
@emegbert 10 ай бұрын
How would you sort the To Do list items when retrieving the data?
@Grepsoft
@Grepsoft 9 ай бұрын
you can add a toolbar button that can then call a function to sort the todos.
@aryanjasuja8295
@aryanjasuja8295 7 ай бұрын
I am Facing some issues can someone please help me with that ?
@diegomonteagudo3560
@diegomonteagudo3560 Жыл бұрын
What do you think about Scrollview + Vstackk > list component in terms of performance? Cause I see you are using list here and I think is better to avoid use it
@iOSAcademy
@iOSAcademy Жыл бұрын
A bit subjective
@ryanhofmann7644
@ryanhofmann7644 10 ай бұрын
I love this video. Just a quick question. so when do you use a "?". Example: self?.insertUserRecord(id: userId). This is at time 1:07:50 in the video.
@BishownathDhakal
@BishownathDhakal 10 ай бұрын
"?" is optional value type. When the value type is nil or if we are not sure whether there is a value or nil, we have to use "?" to avoid app crash.
@ryanhofmann7644
@ryanhofmann7644 10 ай бұрын
Thank you my friend🙌🏽@@BishownathDhakal
@SwiftDeveloperWorld
@SwiftDeveloperWorld Жыл бұрын
What is different between StateObject and ObservableObject?
@bmsrangel1
@bmsrangel1 Жыл бұрын
I have this same question, and according to ChatGPT: In SwiftUI, both `@StateObject` and `@ObservedObject` are property wrappers used to manage the state of objects within a view. However, there are some differences in their behavior and usage: 1. `@StateObject`: - `@StateObject` is used to declare a property that represents the state of an object owned by a particular view. - It creates and owns the object within the view, and the object persists as long as the view exists. - When the view is recreated due to a change in its parent's state, the `@StateObject` property will be initialized with a new instance of the object. - It is typically used for objects that are specific to a single view and should not be shared with other views. 2. `@ObservedObject`: - `@ObservedObject` is used to declare a property that represents an external object that the view needs to observe for changes. - The object is typically created outside the view and passed in as a dependency. - The view doesn't own the object, but it monitors the object for changes and updates its UI accordingly. - When the observed object changes, the view is automatically refreshed to reflect the new state. - It is suitable for sharing the same object instance across multiple views. In summary, `@StateObject` is used for managing the state of an object owned by a view, while `@ObservedObject` is used for observing changes in an external object passed into a view.
@progra7502
@progra7502 5 ай бұрын
🤙
@beckschubert8746
@beckschubert8746 9 ай бұрын
I'm getting an error when trying to build app after creating the RegisterViewModel "App Delgate does not conform to UIApplicationDelegate protocol" - any thoughts how to fix?
@RobinAnttal
@RobinAnttal 6 ай бұрын
Did you managed to fix this? can you help me with this
@brendongong7295
@brendongong7295 Жыл бұрын
Stupid question: How did you pull up the terminal to view executed print statements?
@iOSAcademy
@iOSAcademy Жыл бұрын
Cmd Shift y - totally fair question :)
@user-rh1wh5xx4b
@user-rh1wh5xx4b 4 ай бұрын
How to plus notification into this project?
@user-rh1wh5xx4b
@user-rh1wh5xx4b 4 ай бұрын
ps I'm a Newbie
@Mooney231
@Mooney231 28 күн бұрын
I really found this video useful but if you could avoid saying button in future videos, that would be great.
@arhansethi12
@arhansethi12 5 ай бұрын
Hey! So in firebase, I am able to see the users in authentication but they're not showing up in the live database. Let me know how to fix this! Thanks!
@iOSAcademy
@iOSAcademy 5 ай бұрын
Check your db security rules
@arhansethi12
@arhansethi12 5 ай бұрын
@@iOSAcademy that worked! thanks so much!
@AnishKumar-li8vy
@AnishKumar-li8vy 9 ай бұрын
Can you please provide source code or github repo
@iOSAcademy
@iOSAcademy 9 ай бұрын
Available for iOS Academy+ members
@user-pt8ni4ke2i
@user-pt8ni4ke2i 8 ай бұрын
hello
@iOSAcademy
@iOSAcademy 8 ай бұрын
Hi
@for-audiophiles
@for-audiophiles Ай бұрын
You talk too fast to be understood. Please try to demonstrate slowly. Because not everyone here is a professional like you. There are lots of beginners like me who needs a foundation about basic things. They need some time to understand an idea. Give us enough time to think. So, we can move forward with you.
@victorriurean
@victorriurean Жыл бұрын
@iOSAcademy
@iOSAcademy Жыл бұрын
Thanks
@user-mw9pj5ky2h
@user-mw9pj5ky2h 2 ай бұрын
🔥
@rizkysiregar
@rizkysiregar 3 ай бұрын
Thanks bro, @afrazsiddiqui
Why I *highly dislike* iOS Development
10:38
mayuko
Рет қаралды 344 М.
How I build Apps that PRINT ($30k/month Micro SAAS)
22:51
Steven Cravotta
Рет қаралды 233 М.
MEGA BOXES ARE BACK!!!
08:53
Brawl Stars
Рет қаралды 35 МЛН
Василиса наняла личного массажиста 😂 #shorts
00:22
Денис Кукояка
Рет қаралды 10 МЛН
Мы никогда не были так напуганы!
00:15
Аришнев
Рет қаралды 4,9 МЛН
I Created A Mobile App Using These Simple Tools!
10:48
Simon Grimm
Рет қаралды 629 М.
Build your first iOS app with SwiftUI
2:55:24
Paul Hudson
Рет қаралды 495 М.
Levy vs Hans aka YOUTUBE GUY vs USA's 1st World Chess Champ
11:35
How ChatGPT Built My App in Minutes 🤯
8:28
Website Learners
Рет қаралды 2 МЛН
ChatGPT Just Learned To Fix Itself!
5:47
Two Minute Papers
Рет қаралды 25 М.
Introduction to SwiftData - iOS Development
12:51
iOS Academy
Рет қаралды 9 М.
🔴 Let's Build Tinder with SwiftUI | iOS 17 | Dating App
3:44:05
Swift in 100 Seconds
2:25
Fireship
Рет қаралды 736 М.