So for my friend and I's desktop messaging app project (WPF .NET framwork), we need a way to store the username, email, password, messages and profile picture of every user (the messages could also be saved locally on the device instead for simplicity) and I was recommended to use asp.net core for the server, MongoDB - NoSQL or PostgreSQL - SQL for my database and restful api. I was wondering whether anyone had any other recommendations or not.
Finally, I also want to ask about the order in which to make these, do I semi-complete the GUI since it requires user data to generate UI elements or do I make the server and database first and then complete the UI last so that all the functionality is there from the get go