I noticed I was writing pretty much the same backend logic over and over again so I decided to refactor some of my code and create a separate generic framework for backend operations. Later, I wanted that same code to run as a backend server separately from my applications and I wanted to connect to it via REST API.