https://medium.com/@oluwadaprof/agile-%EF%B8%8F-architecture-%EF%B8%8F-in-javascript-enhancing-flexibility-and-scalability-%EF%B8%8F-696100fca17e