Schema and UI Design for BookLog Application
I am absolutely in love with 100Days and I am so glad I started this with my colleague Kushagra who inspires me every day and we both support each other to stay on track :-)
We would be happy to have you join us at our MongoDB Community and learn with us. 😊
The idea of the BookLog Application started with Realm relationships. I have been learning how the Realm object model from mobile will get synced to MongoDB Atlas and it has been a bumpy ride for some use-cases.
Previously, my Author and Book Data Model was as below:
I inverted the model and added relation in the Book
as its more likely to have an author without a book than have a book without an author.
I also added @Required
annotation to Book and Author name so that they are not left blank.
So, the revised schema looks as below:
For now, I will only focus on basic schema modelling so that you and I can understand concepts before we get into complicated cases.
Both Realm Object Models will be added as two separate collections when they are synced to MongoDB Atlas.
I spent some time thinking how I want UI screens to look like. I would need to design three screens :
- Add Author,
- Add Book, &
- BookList
Now, for three screens, having Navigation Component or a Menu makes sense. I have not done Navigation in a long while.. :-/
I absolutely enjoy the idea when learning one concept leads to another. Although it does extend the application built time but all learning is worth it.
I will spend some more time on how I want to design my UI and continue tomorrow on this.