https://www.somethingsblog.com/2024/10/20/node-js-design-patterns-creational-structural-essentials/