After a weeks break from touching anything to do with any of my projects I stepped back into xCode and I began by researching into the best way to store data on the app.
SwiftData vs Firebase
SwiftData and Firebase are both excellent choices for a database on an IOS app. While SwiftData is natively integrated with Swift, Firebase has a very will documented SDK that integrates seamlessly with Swift.
After some research, I came to the conclusion of using Firebase and Firestore to manage my user authentication and user data. My conclusion was mainly influenced by Firebase being compatible across all platforms which would ensure future expansion onto Android and the Web easier and much more simple.
However, after I started to integrate Firebase onto Odomo I kept falling into issues. I believe that this is purely due to my lack of understanding of the SDK as at this moment in time, I feel like its too complicated for my basic knowledge of Swift and IOS App development. Therefore, I made the decision to revert back to SwiftData.
The main advantage of using SwiftData is the data persistence which allows the app to work 100% offline and can be easily synced to iCloud. It does however limit me in the fact that 1 IOS account can have 1 user and it doesn’t support cross platform use.
I do believe that at lease for now this will be the best way to progress as I learn as I develop this application.
Odomo UI Progress
As I was focusing mainly on the backend data storage, there wasn’t any major progress with the UI.
I began by creating the user log in page for integration with Firebase, but after I decided to stick with SwiftData, this was removed as quickly as it was created.
I then looked further into the documentation for forms, sections and navigation which I then used to improve the UI for the home page and the settings. These changes are very much a work in progress and will most defiantly change as I progress with this app.
Thanks for Reading!
Have a question, enquiry or proposition?
Feel free to contact me