Loading...
Loading...
Found 116 Skills
[Pragmatic DDD Architecture] Guide for Server and Client components in Next.js App Router. Use when creating any .tsx file under presentation/components/, pages, or layouts — also when deciding whether to add "use client" to an existing component, passing data from a Server Component to a Client Component, composing Server content inside a Client slot, handling the VO serialization boundary, creating Compound Components, separating logic for Mobile/Desktop screens, or styling with `cva` and `cn`. Covers: Server vs Client decision, async Server Component patterns, creating getSession callbacks for Use Cases, Client Component restrictions, toBranded() boundary pattern, children slot composition, and props interface rules. Depends on 'use-cases' and 'server-actions'.
Requirements clarification and decomposition, identify stakeholders and label requirement items with their corresponding owners and business entities; only produce structured requirement descriptions without modeling definitions, which can be used as input for subsequent modeling
Design, refactor, analyze, and review code by applying the principles and patterns of tactical domain-driven design. Triggers on: domain modeling, aggregate design, 'entity', 'value object', 'repository', 'bounded context', 'domain event', 'domain service', code touching domain/ directories, rich domain model discussions.
Apply DDD tactical patterns in code using entities, value objects, aggregates, repositories, and domain events with explicit invariants.
[Pragmatic DDD Architecture] Guide for Next.js 16 Proxy (formerly middleware), app router segments, layout composition, i18n URL localization, cookie management, and redirect strategies between public and protected routes. Use when updating proxy.ts, configuring public vs private environments, modifying the [locale] vs /dashboard routing structure, and appending headers.
Validate domain boundaries -- detect cross-context import violations and aggregate invariant issues
Enterprise-grade architecture combining DDD bounded contexts with Feature-Sliced Design. Use for large-scale monorepos with multiple domains, microservices, event-driven communication, and scalable frontend modules.
Guides FastAPI backend design using Domain-Driven Design (DDD) and Onion Architecture in Python. Use when structuring a FastAPI app (routes/handlers, Pydantic schemas, Depends-based DI), modeling domain Entities/Value Objects, defining repository interfaces, implementing SQLAlchemy infrastructure adapters, or writing use cases, based on the dddpy reference.
[Pragmatic DDD Architecture] How to structure **Use Cases** using DDD and Railway-Oriented Programming (neverthrow Result types). Tailored for TypeScript + drizzle-orm + node-postgres stack. **Use whenever creating or modifying any Use Case class — even simple ones like "Exists" or "List" operations — to ensure type-safe error unions, proper transactional boundaries, Value Object-only contracts, auth-first patterns, and Result-based error handling.** Includes references to working examples (Create, List, Exists patterns). Depends on 'repositories' skill.
[Pragmatic DDD Architecture] Guide for creating strictly typed Domain validation and infrastructure errors. Use when handling or creating new errors to ensure they conform to the Railway-oriented programming model (neverthrow Result), TypeScript error branding, and constructor parameter constraints. Covers co-location rules vs. shared domain error usage.
[Pragmatic DDD Architecture] Guide for creating Next.js Server Actions exactly tied to zod, neverthrow, and the domain architecture. Use when creating or editing any file in presentation/actions/. Covers "use server" placement, unknown parameters validated with `zod`, discriminated union response types, auth-first pattern, Value Object validation with TypeScript narrowing, use-case error mapping via `assertNever`, serviceContainer invocation, and revalidation strategy.
[Pragmatic DDD Architecture] Guide for creating PostgreSQL tables and defining relations using Drizzle ORM. Use when creating new schemas, managing PostgreSQL indexes, enums, mapping column names to camelCase for the domain, and explicitly exporting constraint names.