If you have a choice and you’re not sure you generally can’t go wrong with postgres; it will do almost anything you want with minimal fuss and is extremely solid. IMO NoSQL is an optimisation for certain specific usecases, but YMMV
Generally SQL is fine, and even better for most use-cases, but there if your working on side projects NoSQL can be cheaper to run due to the abundance of free database data. Database hosting with Mongo Atlas is free up to 500mb.
NoSQL can handle relational data almost as well as SQL. The flexbility is great for changing data setups, but there is almost no scenario where a well defined, well structured SQL database can’t out-perform a SoSQL one.
Finally, if you want to do this project just for learning use the one you want to learn. SQL is usually more popular with most companies, and NoSQL is more popular with smaller companies and startups due to the flexibility it provides.
I am interested in this as well. With my limited knowledge of NoSQL I have interpreted it like this:
For long term storage I should use PostgreSQL
For caching and static lookup tables I should use NoSQL (Mongo / Redis)
I am using PostgreSQL today for critical data and it is very stable, but I am planning to investigate Redis for caching sessions, lookup tables and similar static or temporary purposes.
I would say it all depends on the structure of your data. In most of the cases, production level apps would use multiple databases often combining SQL and NoSQL to their needs. Consider message type in Whatsapp (or similar) - it has uncertain type, because it could be a text, audio recording, video, location or contact. When you have such types - go with NoSQL, at the same type very stable data, like user credentials might go to SQL database.
Since the data state above is well-structured, I would recommend you using SQL databases, as they are best for structured data. However, MySQL and other similar databases usually lack flexibility.
I would recommend you readin this guide before choosing your solutions.