database

Standardize Drizzle ORM query patterns and enforce RLS in server modules.

1|Updated Jan 12, 2026
One-click install
npx skills add https://github.com/JosephAnson/claude-plugin --skill database-josephanson
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: database
Source: https://github.com/JosephAnson/claude-plugin/tree/main/skills/database
Command: npx skills add https://github.com/JosephAnson/claude-plugin --skill database-josephanson

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Standardizes Drizzle ORM patterns and database conventions to prevent inconsistent queries and unsafe data access in the fitness app.

Core Features & Use Cases

  • Centralized query patterns and naming conventions (queryX vs getX) to enforce consistency across services.
  • Enforced Row Level Security (RLS) at the query layer to protect user data.
  • Organized server/database/queries structure to promote maintainability and reuse.

Quick Start

Integrate the Drizzle ORM patterns into your server codebase by applying the defined query conventions.

Frequently Asked Questions about database

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I standardize Drizzle ORM query patterns to prevent inconsistent data access?

Standardizing Drizzle ORM patterns involves centralizing data-access logic in dedicated /server/database/queries files and enforcing consistent naming conventions to prevent inconsistent queries and unsafe data access.

What is the best way to enforce Row Level Security (RLS) with Drizzle ORM in my API routes?

Enforcing Row Level Security (RLS) with Drizzle ORM requires applying RLS directly at the query layer in server modules to protect user data during read, write, and security-sensitive operations.

How do I structure Drizzle ORM relations queries for type safety in server modules?

Structuring Drizzle ORM relations queries for type safety involves using useDB().query for relations and organizing all data-access logic within dedicated /server/database/queries files.

Why should I avoid direct try/catch blocks in Drizzle ORM query functions?

Avoiding direct try/catch blocks in Drizzle ORM query functions enforces standardized error handling conventions and ensures consistent query patterns across API routes and server modules.

Does Drizzle ORM require a specific server directory structure for safe data access?

Drizzle ORM safe data access requires organizing data-access logic within a dedicated /server/database/queries directory structure to promote maintainability, reuse, and consistent query naming.

When do I need centralized query naming conventions in a Drizzle ORM codebase?

Centralized query naming conventions in a Drizzle ORM codebase are needed when enforcing consistency across services, specifically standardizing queryX versus getX patterns for all read and write operations.