This project implements the main examples of humble object pattern described in Unit Testing: Principles, Practices, and Patterns from Vladimir Khorikov, using TypeScript.
All the unit and integration tests are included.
The Audit system example (from chapter 6 in the book) refactors a project that uses the filesystem, from overcomplicated code to functional architecture.
The CRM example (from chapter 7 in the book) refactors a project that uses a database and a message bus, from overcomplicated code to hexagonal architecture.