Introduction
The Nx Tools Prisma plugin provides comprehensive executors and generators for seamlessly integrating Prisma ORM into Nx workspaces.
The @nx-tools/nx-prisma plugin delivers a complete Prisma integration for Nx monorepos, offering streamlined database workflows, automated schema management, and powerful code generation capabilities that scale with your application architecture.
Key Features
- Complete Prisma CLI Integration: Access all Prisma commands through Nx executors with proper dependency management
- Intelligent Project Setup: Automated generators that configure Prisma with best practices for monorepo environments
- Database Workflow Management: Streamlined migration, deployment, and schema synchronization processes
- Development Tools Integration: Built-in Prisma Studio access and validation workflows
- Monorepo-Optimized: Designed specifically for multi-project workspaces with shared database schemas
Getting Started
Installation
To add the @nx-tools/nx-prisma plugin to your Nx workspace, run the following command:
npx nx add @nx-tools/nx-prismaProject Configuration
Initial Setup
Configure Prisma for your application using the configuration generator:
nx g @nx-tools/nx-prisma:configuration <project-name>This generator automatically sets up:
- Prisma Schema: Creates a
schema.prismafile in your project root with sensible defaults
- Nx Targets: Adds pre-configured executors for all common Prisma operations
Schema Customization: While the default configuration places the Prisma schema in the project root, you can relocate or rename your schema file. Ensure the options.schema property in your project targets reflects the correct relative path to maintain proper functionality.
Available Operations
Once configured, you can execute comprehensive Prisma workflows using the following commands:
Code Generation and Schema Management
# Generate Prisma Client and related artifacts
nx prisma-generate <project-name>
# Validate schema syntax and configuration
nx prisma-validate <project-name>Database Operations
# Deploy pending migrations to production database
nx prisma-deploy <project-name>
# Create and apply new migrations
nx prisma-migrate <project-name>
# Pull database schema changes to Prisma schema
nx prisma-pull <project-name>
# Push schema changes directly to database (development)
nx prisma-push <project-name>
# Populate your database with predefined data
nx prisma-seed <project-name>Development Tools
# Launch Prisma Studio for visual database management
nx prisma-studio <project-name>
# Format Prisma schema file
nx prisma-format <project-name>
# Reset the database and apply migrations
nx prisma-reset <project-name>
# Resolve Prisma schema conflicts
nx prisma-resolve <project-name>Command Usage Patterns
Development Workflow:
- Modify your Prisma schema
- Run
nx prisma-generateto update the client - Use
nx prisma-pushfor rapid prototyping ornx prisma-migratefor production-ready changes - Validate changes with
nx prisma-validate
Production Deployment:
- Apply migrations with
nx prisma-deploy - Generate optimized client with
nx prisma-generate
Advanced Configuration: For detailed information about all available executor options, advanced use cases, and customization possibilities, refer to the configuration generator documentation.
Last updated on