I am trying to learn the design patterns with which I created this repository for this purpose.