modelagem-dominio-9box

Model domain entities and value objects for Laravel performance management.

Updated Jan 23, 2026
One-click install
npx skills add https://github.com/VictorSmaniotto/degestao --skill modelagem-dominio-9box
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: modelagem-dominio-9box
Source: https://github.com/VictorSmaniotto/degestao/tree/main/.agent/skills/modelagem-dominio
Command: npx skills add https://github.com/VictorSmaniotto/degestao --skill modelagem-dominio-9box

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Modelando o domínio central para gestão de desempenho, este Skill define entidades, VO e relações, com 9BOX como projeção derivada, promovendo fronteiras de domínio claras e arquitetura sustentável.

Core Features & Use Cases

  • Identifica entidades centrais (Pessoa, Contexto, Ciclo, Evidência) e diferencia entre entidades e Value Objects.
  • Impõe os princípios de Domain-Driven Design, com Evidência como fato imutável e 9BOX como projeção derivada.
  • Propõe estrutura PSR-4 de pastas (app/Domains) e indica quais entidades devem ser Eloquent Models vs. objetos de valor; cobre cenários típicos de modelagem de domínio em Laravel.
  • Evita misturar preocupações de UI ou infraestrutura na modelagem de domínio; fornece caminho para services e repositories.

Quick Start

Define the initial domain model structure in app/Domains and outline the entities and value objects for Person, Context, Cycle, and Evidence.

Frequently Asked Questions about modelagem-dominio-9box

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

FAQPage Schema
How do I structure domain modeling in Laravel using DDD principles?

Structuring domain modeling in Laravel involves defining a PSR-4 layout under app/Domains to separate core entities like Person, Context, Cycle, and Evidence from infrastructure concerns, ensuring sustainable architecture.

What is the difference between an Eloquent model and a value object in domain-driven design?

In domain-driven design, an Eloquent model typically represents a persistable entity with identity, whereas a value object is an immutable concept without identity. This Skill specifies which domain objects like Evidence should be Eloquent models versus value objects.

When should I use a derived projection like 9BOX in domain modeling?

You should use a derived projection like 9BOX in domain modeling when you need to calculate performance management outcomes from immutable facts. The 9BOX serves as a projection derived from core entities rather than being a primary domain object itself.

Can I use Eloquent models for all domain entities in Laravel?

You should not use Eloquent models for all domain entities in Laravel. This approach clarifies which specific domain objects like Evidence should be Eloquent models versus value objects to maintain clear domain boundaries and enforce DDD principles.

What is the best way to separate domain logic from UI concerns in Laravel?

The best way to separate domain logic from UI concerns in Laravel is to model domain concepts within an app/Domains structure using DDD principles, providing a clear path for services and repositories while keeping UI and infrastructure concerns out of the domain model.