Skip to content
CONTEXT MAPPER
  • Docs
  • Language Reference
  • Generators
  • News
  • Background
  • Get Involved
    Introduction
    • Welcome
    • Getting started
    • Create CML Project
    • Examples
    • Usage as Library
    • Frequently Asked Questions
    Language Reference (Core)
    • CML Reference - Introduction
    • Language Semantics
    • Context Map
    • Bounded Context
    • Domain and Subdomain
    • Domain Vision Statement
    • Partnership
    • Shared Kernel
    • Customer/Supplier
    • Conformist
    • Open Host Service
    • Anticorruption Layer
    • Published Language
    • Responsibility Layers
    • Knowledge Level
    • Aggregate
    • Tactic DDD Syntax
    • Application and Process Layer
    • User Requirements
    • Stakeholders
    • Value Registers
    • Imports
    Analysis and Design Transformations
    • Rapid Object-oriented Analysis and Design
    • Story Splitting (PoC)
    • Stakeholder and Value Modelling Transformations
    Architectural Refactorings (ARs)
    • Architectural Refactorings
    • AR-1: Split Aggregate by Entities
    • AR-2: Split Bounded Context by Features
    • AR-3: Split Bounded Context by Owner
    • AR-4: Extract Aggregates by Volatility
    • AR-5: Extract Aggregates by Cohesion
    • AR-6: Merge Aggregates
    • AR-7: Merge Bounded Contexts
    • AR-8: Extract Shared Kernel
    • AR-9: Suspend Partnership
    • AR-10: Change Shared Kernel to Partnership
    • AR-11: Change Partnership to Shared Kernel
    Value-Driven Analysis and Design
    • Value-Driven Analysis and Design (VDAD) Support
    Service Cutter
    • Context Map Suggestions with Service Cutter
    • Service Cutter Configuration File (.servicecutter.yml)
    Reverse Engineering
    • Context Map Discovery
    Generators
    • Generators Overview
    • Context Map Generator
    • PlantUML Generator
    • BPMN Sketch Miner Generator
    • MDSL (Micro-)Service Contracts Generator
    • Service Cutter Generators
    • Generic Generator (Templating)
    Tutorials
    • Model Event Storming Results in Context Mapper
    • Event Sourcing and CQRS Modeling in Context Mapper
    • Generate Microservices From Context Map Using JHipster
    • Systematic Service Decomposition with Context Mapper and Service Cutter
    • Validating the Implementation against the Model (with ArchUnit)
    IDE Plugins and Extensions
    • Visual Studio Code Extension
    • Online IDE (no longer supported)
    • Eclipse Plugin
    • Feature Support

    Welcome

    Context Mapper is a modular and extensible modeling framework for Domain-driven Design (DDD) and its strategic patterns. The core component provides a DSL to create context maps featuring these DDD patterns. The model behind the language and its semantic rules express our interpretation of the DDD patterns and how these patterns can be combined in a concise and consistent manner. At present, Context Mapper comes as an Eclipse plugin, a Visual Studio Code extension, or as a standalone Java library version:

    Installation

    Visual Studio Code Marketplace: Context Mapper

    • Does not support all features we have in Eclipse yet. You can find a feature support table here.

    Eclipse Marketplace: Context Mapper

    • Alternatively you can install the Eclipse plugin manually with the following update site URL: https://contextmapper.org/eclipse-update-site/

    Framework Architecture

    Context Mapper Framework Components

    DDD and its Bounded Contexts provide an approach for decomposing a domain. With our Service Cutter integration (currently in proof-of-concept state) we illustrate how the Context Mapper DSL (CML) can be used as a foundation for even more structured service decomposition approaches. Based on its coupling criteria, Context Mapper suggests new Context Maps which may improve the architecture with respect to coupling and cohesion. Architectural Refactorings (ARs) support to decompose a Context Map in an iterative manner.

    If you work on a project with an existing monolithic or (micro-)service-oriented architecture, you can use our reverse engineering library to recreate a CML context map from the existing code (architecture recovery). This library is built in an extensible fashion, allowing the implementation different bounded context and context map discovery strategies. At present, Spring Boot applications and Docker compose files can be analyzed by existing strategies.

    The provided model transformations and generators allow transforming the CML context maps into other representations of the architectural model. We currently offer the following generators:

    • Graphical Context Map generator based on Graphviz (supported formats: .png, .cvg., .dot),
    • PlantUML component and class diagram generator
    • Microservice Domain-Specific Language (MDSL) (micro-)service contracts generator
    • Service Cutter input files generators
    • Generic Textual Generator based on Freemarker Templates

    Find out how to start using Context Mapper right now.

    Improve this page on GitHub
    Next →Getting started
    © 2026 Context Mapper contributors
    • GitHub
    • Get Involved
    • Background & Publications
    • RSS