How many times have you spent hours configuring a database before writing your first line of business code?
It is a common reflex: you start a project and rush into technical choices. PostgreSQL or MySQL? Docker or local database? Schemas, migrations, connections... Meanwhile, the real value of the project, the business logic, waits patiently for its turn.
With Phexium, I took the opposite path: starting without a database becomes the natural approach. The architecture guides you toward the business first, you define your entities, your rules, your use cases. A simple InMemory repository is enough to make everything work. Everything is testable in a few milliseconds.
And when the time comes to plug in a real database? You simply implement the corresponding adapter. Same interface, same behavior. PostgreSQL, MySQL, SQLite, it does not matter. Your business domain has not changed by a single line.
The benefit is twofold: you move fast on what truly matters, and you keep the flexibility to change your mind later. The technical decision becomes reversible.