Full-stack
- File size
- 11.5KB
- Lines of code
- 254
Full-stack
To know anything, you must know everything.
For clarity, this document is about full-stack architecture.
Definitions
Within the context of software development.
- Architecture: blueprint of how a website or application’s components interact with each other AND how data flows through the system
- Full-stack: consists of the three below layers
- API (application programming interface): bridge between the frontend and backend that defines communication via HTTP requests
Frontend
- Primary user interface (UI) that directly impacts the user experience (UX)
- Built using web technologies
- Web programming
- Frameworks (libraries)
Backend
- Responsible for codification of business logic, database interaction, authentication and handling API requests
- Built using backend technologies
- Business logic
- Database interaction
- Authentication
- JWT (JSON Web Token)
- OAuth 2.0
- OpenID Connect
- SAML (Security Assertion Markup Language)
- Session-based authentication
- API handling
Database
- Stores the data required by the application
- Built using database technologies
Overview
Full-stack architecture diagram.
+----------------------+ +---------------------+ +----------------------+
| | | | | |
| [Frontend] | -- API call --> | [Backend] | --- database query ---> | [Database] |
| | | | | |
| UI and UX | | Execute business | | Database CRUD |
| display | <-- response -- | logic | <--- database return --- | operations |
| | | | | |
+----------------------+ +---------------------+ +----------------------+
More on
- Full Stack Development Explained by MongoDB
- How to Learn Software Design and Architecture | The Full-stack Software Design & Architecture Map by khalilstemmler.com
- How to Architect a Full-Stack Application from Start to Finish by Lane Wagner
- Understanding Full Stack Development Architecture: A Comprehensive Guide by Petru Reaboi
- Caching
- Queuing and Task Management
- Error Handling and Logging
- Microservices
- Docker (containerization)
- Kubernetes (orchestration)I
- Istio (service mesh)
- DevOps (for Continuous Integration (CI) and Continuous Deployment (CD))
- Unit Testing
- Load Testing
- Cloud Providers (serverless architecture)
- Real-Time Communication
- Data Security
- State Management