administering-linux
Manage Linux systems covering systemd services, process management, filesystems, networking, performance tuning, and…
Relational database implementation across Python, Rust, Go, and TypeScript. Use when building CRUD applications, transactional systems, or structured data storage. Covers PostgreSQL (primary), MySQL, SQLite, ORMs (SQLAlchemy, Prisma, SeaORM, GORM), query builders (Drizzle, sqlc,
Claude Code
$ npx -y skills add ancoleman/ai-design-components --skill using-relational-databases --agent claude-code
Codex
$ npx skills add ancoleman/ai-design-components --skill using-relational-databases -a codex -y
Cursor
$ npx skills add ancoleman/ai-design-components --skill using-relational-databases -a cursor -y
Gemini CLI
$ npx skills add ancoleman/ai-design-components --skill using-relational-databases -a gemini-cli -y
GitHub Copilot
$ npx skills add ancoleman/ai-design-components --skill using-relational-databases -a github-copilot -y
OpenCode
$ npx skills add ancoleman/ai-design-components --skill using-relational-databases -a opencode -y
Windsurf
$ npx skills add ancoleman/ai-design-components --skill using-relational-databases -a windsurf -y
name: using-relational-databases description: Relational database implementation across Python, Rust, Go, and TypeScript. Use when building CRUD applications, transactional systems, or structured data storage. Covers PostgreSQL (primary), MySQL, SQLite, ORMs (SQLAlchemy, Prisma, SeaORM, GORM), query builders (Drizzle, sqlc, SQLx), migrations, connection pooling, and serverless databases (Neon, PlanetScale, Turso).
This skill guides relational database selection and implementation across multiple languages. Choose the optimal database engine, ORM/query builder, and deployment strategy for transactional systems, CRUD applications, and structured data storage.
**Trigger this skill when:**
**Skip this skill for:**
Database Selection Decision Tree ═══════════════════════════════════════════════════════════ PRIMARY CONCERN? ├─ MAXIMUM FLEXIBILITY & EXTENSIONS (JSON, arrays, vector search) │ └─ PostgreSQL │ ├─ Serverless → Neon (scale-to-zero, database branching) │ └─ Traditional → Self-hosted, AWS RDS, Google Cloud SQL │ ├─ EMBEDDED / EDGE DEPLOYMENT (local-first, global latency) │ └─ SQLite or Turso │ ├─ Global distribution → Turso (libSQL, edge replicas) │ └─ Local-only → SQLite (embedded, zero-config) │ ├─ LEGACY SYSTEM / MYSQL REQUIRED │ └─ MySQL │ ├─ Serverless → PlanetScale (non-blocking migrations) │ └─ Traditional → Self-hosted, AWS RDS, Google Cloud SQL │ └─ RAPID PROTOTYPING ├─ Python → SQLModel (FastAPI) or SQLAlchemy 2.0 ├─ TypeScript → Prisma (best DX) or Drizzle (performance) ├─ Rust → SQLx (compile-time checks) └─ Go → sqlc (type-safe code generation)
ORM vs Query Builder Selection ═══════════════════════════════════════════════════════════ TEAM PRIORITIES? ├─ DEVELOPMENT SPEED / DEVELOPER EXPERIENCE │ └─ ORM (abstracts SQL, handles relations automatically) │ ├─ Python → SQLAlchemy 2.0, SQLModel │ ├─ TypeScript → Prisma (migrations, type generation) │ ├─ Rust → SeaORM (Active Record + Data Mapper) │ └─ Go → GORM, Ent │ ├─ PERFORMANCE / QUERY CONTROL │ └─ Query Builder (SQL-like, zero abstraction overhead) │ ├─ Python → SQLAlchemy Core, asyncpg │ ├─ TypeScript → Drizzle, Kysely │ ├─ Rust → SQLx (compile-time query validation!) │ └─ Go → sqlc (generates types from SQL) │ ├─ TYPE SAFETY / COMPILE-TIME GUARANTEES │ ├─ Rust → SQLx (queries checked at build time) │ ├─ Go → sqlc (generates types from SQL) │ ├─ TypeScript → Prisma or Drizzle │ └─ Python → SQLModel (Pydantic integration) │ └─ COMPLEX QUERIES / JOINS ├─ SQL-first → Query builders or raw SQL └─ ORM-friendly → SeaORM, SQLAlchemy ORM
**Recommended Libraries:**
**When to Use:**
**Quick Pattern:**
from sqlmodel import SQLModel, Field, Session
class User(SQLModel, table=True):
id: int | None = Field(default=None, primary_key=True)
email: str = Field(unique=True, index=True)**See:** `references/orms-python.md` for complete SQLAlchemy/SQLModel patterns, async workflows, and connection pooling.
**Recommended Libraries:**
**Quick Comparison:**
**See:** `references/orms-typescript.md` for Prisma vs Drizzle detailed comparison, Kysely, TypeORM patterns.
**Recommended Libraries:**
**Quick Pattern:**
use sqlx::FromRow;
#[derive(FromRow)]
struct User { id: i32, email: String, name: String }
// Compile-time checked queries (verified at build time!)
let user = sqlx::query_as::<_, User>("SELECT * FROM users WHERE email = $1")
.bind("test@example.com").fetch_one(&pool).await?;**See:** `references/orms-rust.md` for SQLx macros, SeaORM, Diesel patterns, and compile-time guarantees.
**Recommended Libraries:**
**Quick Pattern:**
-- queries.sql: SQL annotations generate type-safe Go code -- name: CreateUser :one INSERT INTO users (email, name) VALUES ($1, $2) RETURNING *;
user, err := queries.CreateUser(ctx, db.CreateUserParams{Email: "test@example.com"})**See:** `references/orms-go.md` for sqlc setup, GORM, Ent, and pgx patterns.
Comprehensive UI/UX and Backend component design skills for AI-assisted development with Claude
Manage Linux systems covering systemd services, process management, filesystems, networking, performance tuning, and…
Data pipelines, feature stores, and embedding generation for AI/ML systems. Use when building RAG pipelines, ML feature serving,…
Strategic guidance for designing modern data platforms, covering storage paradigms (data lake, warehouse, lakehouse), modeling…
Design cloud network architectures with VPC patterns, subnet strategies, zero trust principles, and hybrid connectivity. Use when…
Design comprehensive security architectures using defense-in-depth, zero trust principles, threat modeling (STRIDE, PASTA), and…
Assembles component outputs from AI Design Components skills into unified, production-ready component systems with validated…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.