This repository focuses on decomposing system designs for Amazon Web Services (AWS) hands-on projects, providing practical experience with AWS use cases.
- Decompose system designs for WAC
- Explore key AWS services and their interactions
- Understanding how different AWS services interact in real-world scenarios
- Implementing serverless, machine learning, content delivery, and data processing architectures
- Visualizing architectures using Mermaid diagrams
- Explore scalability, performance, and security considerations
- Gain hands-on experience with AWS
- Implement literate programming practices using org-mode and babel
- https://aws.amazon.com/architecture/well-architected/
- https://cloud.google.com/architecture/framework
- https://learn.microsoft.com/en-us/azure/well-architected/
- https://www.ibm.com/architectures/well-architected/
#+DIAGRAMS_START
The following diagrams are available in this project:
| Diagram Name | Description | Complexity |
|---|---|---|
| URL Shortener | A serverless URL shortening service | 3 |
| Photo Sharing App | A scalable photo sharing application | 5 |
| Ride Sharing Service | A real-time ride-sharing platform | 7 |
| Netflix-like Streaming | A video streaming service similar to Netflix | 8 |
| Twitter-like Social Network | A microblogging and social networking service | 6 |
| E-commerce Platform | A comprehensive e-commerce solution | 7 |
| IoT Data Processing Pipeline | An IoT data ingestion and processing architecture | 6 |
| Machine Learning Training | A distributed machine learning model training pipeline | 5 |
| Serverless Web Application | A scalable web application using serverless components | 4 |
| Multi-Region Active-Active | A globally distributed application with active-active setup | 9 |
-------------------------------------------+----------------+-------------------------|
| Overall Repository Quality | 7 | 8 |
In the diagrams folder, you will find Mermaid diagrams for various system designs. These diagrams can be rendered using the mermaid command:
mermaid view diagrams/url_shortener.mmd
To build the diagrams, use the make diagrams command.
- Clone the repository
- Install dependencies:
make install-deps - Build diagrams:
make diagrams - Run tests:
make test - Lint code:
make lint
To run tests, use the following command:
make testPlease read the CONTRIBUTING.org file for details on our code of conduct and the process for submitting pull requests.
This project uses org-mode for literate programming. To tangle source files from org files, use the following command:
(org-babel-tangle)This project is licensed under the MIT License - see the LICENSE file for details.
For help or questions, please open an issue or contact @jwalsh.
- AWS Documentation: https://docs.aws.amazon.com/
- https://cloudacademy.com/learning-paths/aws-solutions-architect-associate-saa-c02-certification-preparation-954/?utm_source=google&utm_medium=paid-search&utm_campaign=&utm_content=163936506156&utm_term=certified%20solutions%20architect%20associate&utm_feeditemid=&utm_device=c&gad_source=1&gclid=Cj0KCQjw-uK0BhC0ARIsANQtgGM_XsyHTXUKy31qNN4MaFjx_8TBhm5PL8Ooa19c9bK_1ju2LQx8MIYaAud1EALw_wcB