A collection of useful and actionable software engineering principles, design patterns and clean code guidance to build better software and systems from the start.
TL;DR: Jump to concepts
This project started as a personal initiative with the goal of providing ready-to-use snippets for my projects and handy refreshers. It has since evolved into something more informative and educational, broad enough to encompass design patterns, best practices, and simple but useful refreshers.
- The primary goal is to provide a set of resources to build sustainable, reliable, and optimized solutions faster.
- The secondary goal is to use the resources as inspiration to create new concepts or as a reference for my personal editorial work.
- You have access not only to an informative wiki but also to resources you can play with.
- For example, the "23 Design Patterns with TypeScript in Action" repository is provided with unit testing that follows functional scenarios to make the implementation more actionable.
The principles cover general best practices in programming like Design Patterns, but also other domains. This is a non-exhaustive list:
- Clean Code & Design Patterns: Build simple, maintainable, reliable, optimized, and sustainable code.
- Clean Architecture: Build simple, maintainable, reliable, optimized, and sustainable systems.
- Cloud Computing Principles and Best Practices: Build company-grade application systems that scale.
- Artificial Intelligence: Jump into the train of Artificial Intelligence and Machine Learning.
- Refactoring Excellence: Best practices to refactor as a chief.
- Coding Principles: Important principles over Data Structures, Algorithms, OOP, Functional Programming, ...
- This repository is a collection of all resources.
- The knowledge base is divided into Domains.
- Each resource is part of a Domain.
- Each resource has its own repository.