🎯

woltz-react-rich-domain

🎯Skill

from tarcisioandrade/rich-domain

VibeIndex|
What it does

Provides React-specific utilities and hooks for integrating rich domain models and domain-driven design patterns into React applications.

woltz-react-rich-domain

Installation

Install skill:
npx skills add https://github.com/tarcisioandrade/rich-domain --skill woltz-react-rich-domain
4
Last UpdatedJan 25, 2026

Skill Details

SKILL.md

Overview

Dark

A comprehensive TypeScript monorepo for Domain-Driven Design, providing enterprise-ready tools for building maintainable, scalable applications with clean architecture patterns.

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

[![Node.js Version](https://img.shields.io/badge/node-%3E%3D22.12-brightgreen)](https://nodejs.org)

[![TypeScript](https://img.shields.io/badge/TypeScript-5.4%2B-blue)](https://www.typescriptlang.org/)

πŸ“¦ Packages

| Package | Version | Description |

| ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |

| [@woltz/rich-domain](./packages/rich-domain) | [![npm](https://img.shields.io/npm/v/@woltz/rich-domain.svg)](https://www.npmjs.com/package/@woltz/rich-domain) | Core DDD library with entities, aggregates, value objects, and automatic change tracking |

| [@woltz/rich-domain-prisma](./packages/rich-domain-prisma) | [![npm](https://img.shields.io/npm/v/@woltz/rich-domain-prisma.svg)](https://www.npmjs.com/package/@woltz/rich-domain-prisma) | Prisma adapter with Unit of Work and batch operations |

| [@woltz/rich-domain-typeorm](./packages/rich-domain-typeorm) | [![npm](https://img.shields.io/npm/v/@woltz/rich-domain-typeorm.svg)](https://www.npmjs.com/package/@woltz/rich-domain-typeorm) | TypeORM adapter with transaction support |

| [@woltz/rich-domain-criteria-zod](./packages/rich-domain-criteria-zod) | [![npm](https://img.shields.io/npm/v/@woltz/rich-domain-criteria-zod.svg)](https://www.npmjs.com/package/@woltz/rich-domain-criteria-zod) | Zod-based criteria builder for type-safe queries |

| [@woltz/rich-domain-cli](./packages/rich-domain-cli) | [![npm](https://img.shields.io/npm/v/@woltz/rich-domain-cli.svg)](https://www.npmjs.com/package/@woltz/rich-domain-cli) | CLI for project scaffolding and code generation |

| [@woltz/rich-domain-export](./packages/rich-domain-export) | [![npm](https://img.shields.io/npm/v/@woltz/rich-domain-export.svg)](https://www.npmjs.com/package/@woltz/rich-domain-export) | Export data to @woltz/rich-domain repository |

πŸš€ Quick Start

Installation

```bash

# Core library

npm install @woltz/rich-domain

# With your preferred ORM

npm install @woltz/rich-domain-prisma

# or

npm install @woltz/rich-domain-typeorm

# CLI tools

npm install -g @woltz/rich-domain-cli

```

Using the CLI

```bash

# Initialize a new project from template

rich-domain init my-app --template fullstack

# Generate domain from Prisma schema

rich-domain generate --schema prisma/schema.prisma

# Manually add entities

rich-domain add User name:string email:string --with-repo

```

Basic Example

```typescript

import { Aggregate, Entity, Id } from "@woltz/rich-domain";

import { z } from "zod";

// Define your domain model

class User extends Aggregate {

protected static validation = {

schema: z.object({

id: z.custom(),

name: z.string(),

email: z.string().email(),

po