Skip to content

A learning path of runnable event sourcing samples #625

Closed

Description

@woksin

A step-by-step, runnable sample series in the style of https://github.com/oskardudycz/EventSourcing.NetCore: from a first event and projection through CQRS with Arc, reactors, versioning, testing and production concerns. Each step is a small runnable project with a README that links to the Concepts guides on https://www.cratis.io/concepts/. GitHub sample repositories rank well for '.NET event sourcing' searches and are linked from curated lists.

Status

State: Done
Branch: fundamentals-1176-docs (#635, #637, #638, #640, #641)
Scope: First slice of the runnable learning path
Delivered: Nothing yet.
Remaining: To be confirmed.
Follow-ups: None.

Activity

  1. self-assigned this
    on Oct 10, 2026
  2. reopened this on Oct 10, 2026
  3. woksin commented on Oct 13, 2026

    @woksin
    CollaboratorAuthor

    Step 4 (LearningPath/04-Reactors) merged in #635. Steps 1–4 are now on main; remaining steps: event versioning, testing (specs for all steps), validation/authorization, production setup.

  4. woksin commented on Oct 13, 2026

    @woksin
    CollaboratorAuthor

    Step 5 (LearningPath/05-Testing) merged in #637. Event versioning becomes step 6 and waits on Cratis/Chronicle#4862 (CHR0001 rejects appending a previous generation declared with EventTypeGenerationFor). Remaining after that: validation/authorization, production setup.

  5. woksin commented on Oct 13, 2026

    @woksin
    CollaboratorAuthor

    Step 7 (LearningPath/07-ValidationAndAuthorization) merged in #638. Step 8 (production setup) is in progress; step 6 (event versioning) waits on Cratis/Chronicle#4862.

  6. woksin commented on Oct 13, 2026

    @woksin
    CollaboratorAuthor

    Step 8 (LearningPath/08-Production) merged in #640. Steps 1–5, 7 and 8 are on main; step 6 (event versioning) is implemented locally and waits only for the Chronicle 19.59.5 packages and image to be published.

  7. woksin commented on Oct 14, 2026

    @woksin
    CollaboratorAuthor

    The learning path is complete. All eight steps are on main:

    1. First events, 2. First projection, 3. Commands and queries (Arc), 4. Reactors (Add learning path step 4: reactors #635), 5. Testing (Add the testing step to the learning path and apply package pins transitively #637), 6. Changing events over time (Add the event versioning step to the learning path #641), 7. Validation and authorization (Add validation and authorization to the learning path #638), 8. Preparing for production (Add the production setup step to the learning path #640).

    Each step is a runnable project with a README that links the concepts guides; steps 5–8 ship specs that run in CI. Related fixes found along the way: Cratis/Chronicle#4862 (CHR0001 and previous generations, fixed in 19.59.5) and Cratis/Chronicle#4872 (readiness before artifact registration, fixed in 19.59.6); Samples#636 (transitive package pins).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions