forward Database Collections

This project utilizes ODMantic as ODM.

Brave Date Database Collections.
Brave Date Database Collections.

Essentially, there are five primary collections that the platform is built on:

  • User: A collection containing detailed information about each user who signed into the platform.
  • AccessTokens: A collection that keeps track of unique user tokens to ensure only authorized users can log in. It also helps to add a logout functionality on the server side.
  • Match: A collection contains matches for each user. A user must have a match to send a message. A match acts as a receiver of a given message.
  • Conversation: A collection that maps users to messages. Each records groups the messages between senders and receivers
  • Message: A collection contains information about each message type(e.g. text message or media), content of the message...

There is a one-to-many relationship between users and matches. A user can have more than one match. In NoSQL, we can create two collections, namely User and Match.

Contact list view.
Match list view.

The User collection also contains enough information to populate the user profile details view.

User details.
User details.

There is a one-to-many relationship between users and messages; a user can have multiple conversation with other users. Each conversation contains enough information to populate the messages view. In NOSQL, we can create two collections, namely Conversation, and Message. The Conversation collection contains enough information to populate the messages list between each sender and receiver.

Messages list.
Messages list.

Messages list.
Users messages list.