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 Bookas 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.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Henna Singh

Henna Singh

Technical Speaker and an aspiring writer with avid addiction to gadgets, meet-up groups, Kotlin and paper crafts.