When I am new to web development I often have confusion on how everything works together, how to connect all the things, how a full-stack web app is built from scratch, how to plan everything, what all the necessary stuff and so many... If you are also a new web dev or learning web, then I am sure you have also lots of confusion. So, in this blog, I try to reduce that confusion up to some point by giving you a high-level overview of building a full-stack web application.
Before reading this blog, there are a few things to note,
- This is my preferred way of doing things, you may not need to do exactly like this.
- This flow is for small or intermediate level applications.
Before jumping into the project ask yourself a few questions-
- Why I am doing this?
- Who are my audience?
- What tech stack do I need?
- How much time it may take?
- How much budget it may take?
No one starts a project without having a proper design, even if you do you will end up creating a big mess. So get a design first. Find inspiration from websites like Dribbble, Behance and then use tools like Figma, Adobe XD, Sketch etc... to make a design and prototype.
Read my blog about web design principles.
Development is again divided into three sub-phases.
So you got the design, what next? Start building Frontend with any framework or library.
Widely used frontend frameworks/libraries-
Must go through this Front-End Checklist and make sure everything is ok.
Testing is as important as building. Use a testing library to test the frontend. Make web site responsive. Use tools like ngrok to share your localhost and get feedback.
Frontend is ready! Let's start building the backend and REST API.
Widely used backend frameworks/libraries-
Now connect frontend and backend. Test whole application.
This may help you-
Development done! Now containerize your application with docker, set up CI/CD pipelines and do all the DevOps stuff. Or if your website is small and simple just directly deploy on hosting services.
Now comes the final phase and most important phase.
Recommended things to do after developing your application-
- Submit your site to Search console.
- Setup Google Analytics
- Track events with Facebook pixel if you want to create ad campaigns.
- Set up goals.
- Monetize your website.
That's it! This is the high-level overview of building a full-stack application.
- Squoosh is a free image size reducer tool while maintaining high quality.
I hope you find this useful.
Follow for more weekly awesomeness.