Start from the actual UI. UI/UX Prototyping of the features you want for this interaction will help you see what is important and what's not. From there move to the ER diagram.
Creating the ER diagram you should keep in mind what is important for your app's features and how data will be combined together. Also think about the code, no need to write it nor write pseudocode. Just think about it, whether it's possible or not to accomplish a certain demand. In the case you have doubts, write pseudocode to see it through a bit better.
Then, in the end comes the actual study for the exact techstack you're going to use. SQL or NoSQL or both, and the languages different modules and functionalities might need.
Best of luck!!! And also, don't post all your creative ideas on the internet, since other people might steal them ;)