What problem does it solve? Designing a PostgreSQL schema involves many database-specific decisions—data types, indexing strategies, constraints, partitioning, and row-level security—where wrong choices lead to performance problems, data integrity issues, and painful migrations later. ## Core Features & Use Cases - Data Type Selection: Guidance on choosing correct types (TIMESTAMPTZ over TIMESTAMP, TEXT over VARCHAR, NUMERIC for money, BIGINT identity over serial) and which types to avoid entirely. - Indexing & Constraints: Covers B-tree, GIN, GiST, BRIN, partial, covering, and expression indexes, plus PK/FK/UNIQUE/CHECK/EXCLUDE constraint patterns. - Scale Patterns: Partitioning strategies, row-level security, JSONB guidance, and workload-specific designs for insert-heavy, update-heavy, and upsert-heavy tables. - Use Case: When building a new orders table, use this Skill to generate a schema with an identity primary key, proper foreign key indexes, CHECK constraints on status values, and TIMESTAMPTZ timestamps following PostgreSQL best practices. ## Quick Start Use the postgresql skill to design a schema for a users and orders database with proper indexes and constraints.