The idea of Hexagonal Architecture is to put inputs and outputs at the edges of our design. Business logic should not depend on whether we expose a REST or a GraphQL API, and it should not depend on where we get data from — a database, a microservice API exposed via REST, or just a simple CSV file. The pattern allows us to isolate the core logic of our application from ou...