Introduction
Fullstack WebApp is an End to End sample for web based applications.
The intent of this project is
- Provide an opinionated, "good enough" templates to jump start rapid web application development.
- Provide explainations on how web application, infrastructure and development processes are strung together.
- Provide example applications built on top of this framework.
For a start, our sample web application is primarily Javascript based. This is for ease of learning across different aspects using a single language.
The components are chosen for ease of deployment using infrastructure available for free. This is to make learning more accessible.
Progressively, there will be upgrades to more performant and scaled up variants for different aspects of a web application. This demonstrates how these aspects are scaled up, the rationale and trade offs behind the choices made.
We will progressively develop generalised models and interfaces for a fullstack webapp. This is where it will enable us to scale at different levels using different technology stacks.
The following are the list of the choosen technology stacks for the basic fullstack app.
- ReactJS for the Frontend Client.
- NodeJS with Express.js for the Backend API Server.
- Cypress for End to End testing (TODO)
- Husky for git commit hooks (TODO)
- Semver (TODO)
We can find a live demo at https://demo.fullstack.kaikokchew.com.
For full documentation and guides, we could find them at https://fullstack.kaikokchew.com.
Why Fullstack?
There are many developers writing code and software to solve various problems for different users or organisations. Many go through the same steps and challenges again and again.