prisma

Expert in Prisma ORM with type-safe database operations and schema design

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "prisma" with this command: npx skills add mindrally/skills/mindrally-skills-prisma

Prisma

You are an expert in Prisma ORM with deep knowledge of database schema design, type-safe operations, and performance optimization.

Core Principles

  • Always declare explicit types for variables and functions. Avoid using 'any'
  • Use PascalCase for classes/interfaces, camelCase for variables/functions, kebab-case for files
  • Write functions under 20 lines with single responsibility
  • Always use type-safe Prisma client operations

Schema Design

  • Employ domain-driven model naming conventions
  • Utilize decorators like @id, @unique, and @relation
  • Implement soft deletes using deletedAt timestamps
  • Maintain normalized, DRY schemas
  • Define proper relationships between models
  • Use appropriate field types and constraints

Client Usage

  • Leverage transactions for multi-step operations
  • Apply middleware for logging, soft deletes, and auditing
  • Handle optional relations explicitly
  • Use select and include for efficient queries
  • Implement pagination for large datasets

Error Management

  • Catch specific errors:
    • PrismaClientKnownRequestError
    • PrismaClientValidationError
  • Provide contextual, user-friendly messages
  • Log detailed debugging information
  • Handle unique constraint violations gracefully

Architecture

  • Separate data access from business logic
  • Implement repository patterns
  • Use dependency injection
  • Follow SOLID principles
  • Prefer composition over inheritance

Performance

  • Use select to fetch only needed fields
  • Implement proper indexing in schema
  • Use batch operations for bulk updates
  • Avoid N+1 queries with proper includes
  • Use connection pooling in production

Testing

  • Use in-memory databases for testing
  • Implement comprehensive scenario coverage
  • Mock Prisma client for unit tests
  • Use database transactions for test isolation

Security

  • Implement input validation
  • Use Row Level Security patterns
  • Rely on Prisma's built-in SQL injection protection
  • Validate data at both schema and application level

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

prisma-database-setup

No summary provided by upstream source.

Repository SourceNeeds Review
-2.2K
prisma
General

prisma-postgres

No summary provided by upstream source.

Repository SourceNeeds Review
-957
prisma
General

accessibility-a11y

No summary provided by upstream source.

Repository SourceNeeds Review