Skip to main content
Visual modelers provide designers that enable graphical modeling of application architecture and behavior. These modules allow you to create diagrams and models that Intent Architect transforms into working code.

Modeler Categories

Domain Modeling

Entities, value objects, aggregates, and domain relationships

Service Design

REST APIs, operations, DTOs, and service contracts

Event Architecture

Message-based communication and event-driven patterns

UI Design

User interface components and frontend architecture

Domain Modeling

Intent.Modelers.Domain

Module ID: Intent.Modelers.Domain
Version: 3.12.0+
Repository: View Source
Description: A domain designer based on UML class diagrams for expressing entity relationships.
  • Entity Modeling: Create domain entities with attributes and operations
  • Relationships: Define associations, compositions, and aggregations
  • Inheritance: Support for entity hierarchies
  • Value Objects: Model immutable value types
  • Aggregates: Define aggregate boundaries
  • Domain Services: Model domain logic operations
Designer Capabilities:
  • UML class diagram notation
  • Drag-and-drop entity creation
  • Visual relationship mapping
  • Stereotype support for DDD patterns
Configuration Settings:
SettingOptionsDescription
Attribute Naming ConventionManual, Pascal Case, Camel CaseConvention for attribute names
Entity Naming ConventionManual, Pascal Case, Camel CaseConvention for entity names
Operation Naming ConventionManual, Pascal Case, Camel CaseConvention for operation names
Common Patterns:
  • Domain-Driven Design (DDD)
  • Entity-Relationship modeling
  • Aggregate design
  • Repository patterns

Domain Extension Modules

Intent.Modelers.Domain.ValueObjects

Model immutable value objects and their constraints

Intent.Modelers.Domain.Repositories

Define repository interfaces for data access

Intent.Modelers.Domain.Services

Model domain service operations

Intent.Modelers.Domain.Events

Define domain events for event sourcing

Intent.Modelers.Domain.StoredProcedures

Model database stored procedures

Intent.Modelers.Domain.ValueObjects

Module ID: Intent.Modelers.Domain.ValueObjects
Repository: View Source
Extends the domain designer with value object support:
  • Immutable value types
  • Equality comparison semantics
  • Validation rules
  • Type conversion

Intent.Modelers.Domain.Repositories

Module ID: Intent.Modelers.Domain.Repositories
Repository: View Source
Adds repository pattern support:
  • Repository interface definitions
  • Query specifications
  • CRUD operations
  • Custom repository methods

Intent.Modelers.Domain.Events

Module ID: Intent.Modelers.Domain.Events
Repository: View Source
Enables domain event modeling:
  • Event definitions
  • Event publishing
  • Event handlers
  • Event sourcing patterns

Service Design

Intent.Modelers.Services

Module ID: Intent.Modelers.Services
Version: 4.0.0+
Repository: View Source
Description: Services modeler for describing an application’s web services.
  • Service Definitions: Model service contracts and operations
  • DTOs: Define data transfer objects
  • Operations: Service methods with parameters and return types
  • Folders: Organize services into logical groups
  • CQRS: Command and query separation support
  • GraphQL: GraphQL schema support
Designer Elements:
  • Services (service contracts)
  • Operations (methods/endpoints)
  • DTOs (data structures)
  • Parameters (input/output)
  • Enums (enumeration types)
Configuration Settings:
SettingOptionsDescription
Property Naming ConventionManual, Pascal Case, Camel CaseDTO property naming
Entity Naming ConventionManual, Pascal Case, Camel CaseService entity naming
Operation Naming ConventionManual, Pascal Case, Camel CaseOperation naming

Service Extension Modules

Intent.Modelers.Services.CQRS

Command Query Responsibility Segregation patterns

Intent.Modelers.Services.DomainInteractions

Connect services to domain entities

Intent.Modelers.Services.EventInteractions

Model event publishing and handling

Intent.Modelers.Services.ProxyInteractions

Service-to-service communication

Intent.Modelers.Services.GraphQL

GraphQL schema and resolver modeling

Intent.Modelers.Services.CRUD.ServiceDispatch

Auto-generate CRUD operations

Intent.Modelers.Services.CQRS

Module ID: Intent.Modelers.Services.CQRS
Repository: View Source
Enables CQRS pattern modeling:
  • Commands (write operations)
  • Queries (read operations)
  • Handlers for commands and queries
  • Mediator pattern support

Intent.Modelers.Services.DomainInteractions

Module ID: Intent.Modelers.Services.DomainInteractions
Repository: View Source
Connects service operations to domain entities:
  • Entity CRUD operations
  • Domain method invocations
  • Repository access patterns
  • Transaction boundaries

Event Architecture

Intent.Modelers.Eventing

Module ID: Intent.Modelers.Eventing
Version: 6.0.0+
Repository: View Source
Description: Eventing modeler for describing event messages and defining publishers and subscribers.
  • Event Messages: Define event payloads and schemas
  • Publishers: Specify which components publish events
  • Subscribers: Model event consumers and handlers
  • Topics/Channels: Organize events by topic
  • Integration Events: Cross-bounded-context events
  • Message Properties: Event metadata and headers
Messaging Patterns:
  • Publish-Subscribe
  • Event Sourcing
  • CQRS Events
  • Integration Events
  • Domain Events
Designer Elements:
  • Messages (event definitions)
  • Publishers (event sources)
  • Subscribers (event handlers)
  • Subscriptions (routing rules)

Eventing Extension Modules

Intent.Modelers.Eventing.Metadata

Eventing metadata and annotations

Intent.Modelers.Services.EventInteractions

Connect services to event streams

UI Design

Intent.Modelers.UI

Module ID: Intent.Modelers.UI
Repository: View Source
Description: User interface modeling for frontend applications.
  • Component Modeling: Define UI components
  • Page Layout: Design page structures
  • Navigation: Define routing and navigation
  • Data Binding: Connect UI to backend services
  • Forms: Model input forms and validation

UI Extension Modules

Intent.Modelers.UI.Core

Core UI modeling elements

Intent.Modelers.UI.ServiceProxies

Connect UI components to services

Service Proxies

Intent.Modelers.ServiceProxies

Module ID: Intent.Modelers.ServiceProxies
Repository: View Source
Description: Model service client proxies for consuming external services.
  • Proxy Definitions: Define service client interfaces
  • Endpoint Configuration: Service URLs and routes
  • Authentication: Auth configuration for proxies
  • Error Handling: Retry and fallback policies
Extension Modules:
  • Intent.Modelers.ServiceProxies.Metadata - Proxy metadata
  • Intent.Modelers.Types.ServiceProxies - Type definitions

Codebase Structure

Intent.Modelers.CodebaseStructure

Module ID: Intent.Modelers.CodebaseStructure
Repository: View Source
Description: Model the folder structure and organization of your codebase. Use Cases:
  • Define project structure
  • Organize code by feature/layer
  • Configure output paths
  • Manage code organization

Modeler Selection Guide

I want to model…Use this modeler
Domain entities and relationshipsIntent.Modelers.Domain
REST API servicesIntent.Modelers.Services
Event-driven architectureIntent.Modelers.Eventing
User interface componentsIntent.Modelers.UI
Service clientsIntent.Modelers.ServiceProxies
CQRS commands/queriesIntent.Modelers.Services.CQRS
GraphQL APIsIntent.Modelers.Services.GraphQL
Code organizationIntent.Modelers.CodebaseStructure

Common Workflows

Domain-Driven Design

  1. Start with Intent.Modelers.Domain
  2. Add Intent.Modelers.Domain.ValueObjects
  3. Add Intent.Modelers.Domain.Repositories
  4. Add Intent.Modelers.Domain.Events

Microservices Architecture

  1. Use Intent.Modelers.Services for APIs
  2. Add Intent.Modelers.Eventing for integration
  3. Add Intent.Modelers.ServiceProxies for inter-service calls
  4. Use Intent.Modelers.Services.EventInteractions

CQRS Implementation

  1. Use Intent.Modelers.Services.CQRS
  2. Add Intent.Modelers.Services.DomainInteractions
  3. Add Intent.Modelers.Domain for write model
  4. Add Intent.Modelers.Eventing for events

Next Steps

Metadata Modules

Add technical specifications to your models

Module Builder

Create custom modules