Skip to main content

Chapter 0

Introduction

In this tutorial, we will build a small task management application. This will guide you through:

  • Navigating the Codebricks Planner.
  • Understanding and interacting with the generated source code.

By the end of this course, you’ll have a working knowledge of how to leverage Codebricks for building event-sourced applications using CQRS patterns.

Use Case Overview

In this tutorial, we will develop a simple task management app, which includes:

  • Two Command API endpoints:
    • Add Task: Produces the Task Added event.
    • Complete Task: Produces the Task Completed event.
  • A Projection named Active Task with a Query API to provide a real-time overview of active tasks.

This design is based on a high-level event storming session, typically performed with a cross-functional team to capture the essential events and interactions.

High-Level Event Map for Task Management App

Setup

Before we begin building the app, we need to set up the environment:

  1. Create a New Business Domain:

    Name it after your name or your company (The name has to be unique). This domain will encapsulate all the related components of our application.

    note

    Please note that all input fields in the Codebricks Planner only allow lowercase letters and spaces.
    No special characters are permitted. This ensures a smooth generation experience.

  2. Create a Bounded Context:

    Inside your business domain, create a Bounded Context named task management. This context will handle the task-related functionalities and interactions.