Schema ownership
Model constraints and relationships where they remain enforceable, not only in application forms.
Application data layer
An ORM improves developer feedback, but it does not replace database design, query analysis, transaction reasoning, or migration discipline.
How we use it
We use Prisma when its schema, generated client, and migration workflow improve clarity between a TypeScript application and relational data. Database-native capabilities remain available when the abstraction is not the right fit.
Architecture decisions
Model constraints and relationships where they remain enforceable, not only in application forms.
Select only required fields and inspect the actual SQL behavior of important paths.
Define which changes must succeed together and keep transactions short.
Separate schema expansion, data backfill, application change, and cleanup when zero-downtime evolution requires it.
Engineering practice
Failure modes
Appropriate use cases
Technical questions
No. Reliable systems still require understanding relational modelling, indexes, query plans, locks, transactions, and database operations.
Yes, while allowing raw or database-native approaches for queries and capabilities that are clearer outside the ORM abstraction.
Related expertise