hackmd.io has a pretty nice latex supported. I find it much better for math notation than dropbox paper. It also has docker image available incase the service happens to shutdown.
Backend : Since I am more comfortable writing python, for speed and perf i would go for Sanic, it's pretty similar to Flask with async function. For personal or MVP I would use Flask with Peewee or Django depending on the complexity.
Frontend : React for dynamic page only if i really need it. The rest would simply use any jinja provided by the backend framework.
Database : small project sqlite ( personal blog, MVP ), postgresql for production level.
For extremely fast and simple RESTful setup I would go for loopbackwhich has nice cli with lot's of middleware layer for data manipulation.