Я бы выбрал fastify для бэкэнда. Он производительней конкурентов и поддерживает typescript.
Для фронта я бы выбрал Vue, потому что не зависят от большой компании(привет Angular и React), да и говорят в 3 версии уделают всех по производительности(хотя кому она нужна на сегодняшний день). Если нужен SSR под SEO, то чтоб не мучаться, если выбрал React сразу ставь next.js, если vue - nuxt. Если приложение будет большим, то не забываем про redux/vuex.
Базу данных надо выбирать строго под задачу, если связанные между собой то таблицы то строго реляционную - Postgresql или Mariadb. Если просто хранение каких-то данных, то лучше конечно Mongodb. Если какая-то запутанная соцсеть то neo4j. Если очереди нужны то redis. Сейчас на хайпе ещё graphql. ORM - если чисто JS - sequalize, если TS - TypeORM, если Монга - mongoose. Так что исходить надо от задач.
Так же неплох под бэкэнд NestJS, который советовали. Структурированно всё хорошо, запутаться будет тяжело и можно сразу начать писать, большой плюс поддержка TypeScript из коробки. Если на фронте использовать Angular, то вообще песня.
Я бы еще посоветовал adonis js, полный клон laravel на nodejs. Если работал на laravel то будет всё понятно. Да и структура laravel уже проверена годами.