DEV Community

Cover image for Architecture starts paying rent when a user workflow reaches it
LkSvn
LkSvn

Posted on

Architecture starts paying rent when a user workflow reaches it

My TypeScript Candidate Tracker passed 100 tests before it had a page I could actually use.

The repository contracts, Result types, validation services, Prisma adapter, and PostgreSQL integration all had value—but the project still felt like it was walking in place.

Today I changed direction and connected one complete Company workflow to Next.js:

FormData from the browser

  • runtime shape validation
  • business validation
  • application service
  • repository
  • Prisma
  • PostgreSQL
  • refreshed Server Component

The same application now lists, creates, displays, and edits real persisted Companies.

Several earlier decisions finally became concrete:

  • browser validation improves UX but cannot protect the server
  • successful database absence becomes an explicit not-found outcome
  • Server Actions are real public input boundaries
  • a shared Prisma client matters under development hot reload
  • database-generated UUIDs work beyond Prisma Client, including Studio and raw SQL

The lesson was not that architecture is useless. It was that architecture needs a consumer.

Once a real user workflow crossed every layer, the abstractions stopped feeling theoretical and started explaining their cost.

Top comments (0)