scaffold-multi-stream-projection

Create a Marten MultiStreamProjection aggregating events from multiple streams into a single read model.

15|Updated Dec 25, 2025
One-click install
npx skills add https://github.com/aalmada/BookStore --skill scaffold-multi-stream-projection
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: scaffold-multi-stream-projection
Source: https://github.com/aalmada/BookStore/tree/main/.claude/skills/scaffold-multi-stream-projection
Command: npx skills add https://github.com/aalmada/BookStore --skill scaffold-multi-stream-projection

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill enables teams to build a single, comprehensive view by projecting events from multiple streams into a unified read model, simplifying cross-stream analytics and dashboards.

Core Features & Use Cases

  • Multi-Stream Projection: Define projections that listen to multiple streams and aggregate data into a single read model.
  • Aggregation & Dashboards: Create summaries and dashboards from dispersed event data.
  • Use Case: Imagine you want to show total sales, user activity, and inventory status in one dashboard by consuming several event streams.

Quick Start

Create a projection class in src/BookStore.ApiService/Projections/, implement a Summary-like projection, and register it in Marten via MartenConfigurationExtensions.cs. Use a template like templates/Projection.cs for guidance.

Frequently Asked Questions about scaffold-multi-stream-projection

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

FAQPage Schema
How do I aggregate events from multiple streams into a single dashboard view in Marten?

By defining a Marten MultiStreamProjection class, you can aggregate events from multiple streams into a single read model. This approach targets event-sourced .NET services using Marten to build comprehensive cross-stream dashboards.

What is a Marten MultiStreamProjection used for in event-sourced .NET services?

A Marten MultiStreamProjection is used to consume events from multiple distinct streams and aggregate them into a single, comprehensive read model. This simplifies cross-stream analytics and dashboard creation for event-sourced .NET services.

How do I register a multi-stream projection in Marten configuration?

You register a multi-stream projection in Marten configuration by adding it via MartenConfigurationExtensions. The projection class must be defined in your project, and you should add appropriate indexes to the read model for efficient querying.

Can I use multi-stream projections to build sales and inventory dashboards from event sourcing?

Yes, you can use multi-stream projections to build dashboards from event sourcing by consuming several event streams. For example, you can aggregate total sales, user activity, and inventory status events into one unified read model.

Does Marten multi-stream projection require adding indexes for efficient querying?

Yes, Marten multi-stream projection requires adding appropriate indexes to the read model for efficient querying. This ensures that aggregated data from multiple streams remains performant when queried for dashboards and analytics.