* Setup the database
* Define the schema
* Code the server side rest api
* Develop the web frontend
* Deploy it to a server
It doesn't have to be a side hustle it can just be something that solves a problem or scratches a particular itch that you have. If you find it useful then you'll stay motivated to work on it and power through each of the issues you encounter. You can refactor it as you go and learn without fear of deadlines and go at your own pace.
Once you've done it once you'll have the confidence to do it again. But nothing will help you learn full stack development as well as building a full stack application from scratch. There is no shortage of How To resources for each step from above but I find that until you start building something those resources have trouble sticking because you lack the context to anchor the information in.
So just start building stuff.
More specifically, I highly recommend Hartl's Ruby on Rails Tutorial as a starting point. It does a fantastic job of helping you get your hands dirty with everything from the database through the frontend, without assuming a ton of prerequisite knowledge.
Even if you never touch Rails again after (which would be surprising, I have been using Rails for a decade and still love it), you'll have a good grasp of the fundamentals involved.
To learn the very basics I also recommend https://funprogramming.org/
Of course at any point deviate and build your own apps. Then continue with the guides
A good software engineer is good because they can make ends meet. Beginners often make the mistake of spinning their wheels learning the minutiae of some stack that won't be relevant in a decade. Learning how to make money with code is a more enduring and transferable skill, and impresses all but the most jaded hiring managers.
Follow Brad Traversy on YouTube (TraversyMedia). Start with his "Crash course.." videos. Follow along a couple small project tutorials. Spend the money on his Udemy courses.
But as others have said: Build stuff. Brad will walk you through the basics and then have you building things. FOllow along. Code with him.
Depending on how much time you have to devote and grind, you could be further along in building web apps in 3 months than I was in 10 years.
For myself, I have been keeping track of my weight. I just have a notepad on my desk where I log my weight every morning. Simple, convenient, easy.
So I decided to make a single page app that allows me to log my data. I host it on a raspberry pi I have at home. Postgres DB, React front-end, Spring back end. I'm even flirting with the idea of using redis.
Does this make any sense? No. My notebook works wonders in making sure I am aware of my eating habits post-hoc. Did I learn a lot from what I did? Kinda. I'm no expert, but I know more than before.
¯\_(ツ)_/¯