https://blog.gojekengineering.com/how-we-designed-a-component-leading-to-better-readability-scaling-and-testing-c7696a05fb10