I am going to set up a new project for a scalable business. I have chosen React and Node.js because JavaScript is the base for these tools, and there is no need to learn a new programming language. Also, hiring javascript developers is easy.
I chose PostgreSQL, as it is an opensource and most advanced relational database with broad community support.
I am seeking some advice to set the structure up. Please help me out.
I am using this stack and I think it's solid. I use Koa instead of Express which I find a bit more intuitive but the are almost equal in capability. I am using a bit of Typescript which I generate from the database (I've open sourced that: https://github.com/kristiandupont/kanel), but other than that I am not using a lot of libraries or frameworks. My current structure is a mono repo with Yarn workspaces. I have a client and a server folder, as well as a couple of packages that I haven't yet extracted enough to put on NPM. I use Webpack through Create React App for the client and also for the server because I have a few things that need transpiling. I use Gitlab for version control as well as CI/CD. Heroku for hosting and ElephantSQL for database. All in all this runs quite smoothly.
One thing I will advise you to is stick to what you know don't try something new just because it's trending or someone says it's faster and better unless you have the time to learn it. Just find a good folder structure that suits you.
This is what I use and why I use for a full-stack js application - Next.js ( for serverside rendering ) - Eslint and Prettier ( auto code formatting ) - Fastify ( fastest rest API in node )