Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
c099c11
v3/feature/ #154: Error Handling and Resilience
eneshoxha Nov 15, 2025
c115fcc
v3/feature/ #154: Error Handling Implementation
eneshoxha Nov 15, 2025
0dc2a9d
Merge pull request #159 from buildersoftio/v3/feature/154
eneshoxha Nov 15, 2025
4610601
v3/feature/105:
eneshoxha Jan 24, 2026
1f50b17
v3/feature/105: Add unified windowing API: tumbling, sliding, session
eneshoxha Jan 24, 2026
2341a55
v3/feature/169: Add telemetry support to stream operators and tests
eneshoxha Jan 24, 2026
5478cec
Fixed the conflicts between v3/release and v3/feature
eneshoxha Jan 24, 2026
280f187
Merge pull request #170 from buildersoftio/v3/feature/105
eneshoxha Jan 24, 2026
f9c0543
v3/feature/NO_TICKET: Add error handling tests and propagate options
eneshoxha Jan 25, 2026
4a56197
Merge pull request #171 from buildersoftio/v3/feature/ErrorHandlingTests
eneshoxha Jan 25, 2026
e7604ae
v3/feature/67: Add advanced windowing with custom triggers and state …
eneshoxha Jan 25, 2026
36f8205
Merge pull request #173 from buildersoftio/v3/feature/67
eneshoxha Jan 25, 2026
c412c78
v3/feature/162: Simplify Mediator API with type-inferred commands/que…
eneshoxha Jan 25, 2026
720ff19
Merge pull request #174 from buildersoftio/v3/feature/162
eneshoxha Jan 25, 2026
042e20e
[v3/feature/175] :Add notification pipeline behaviors to Mediator
eneshoxha Jan 25, 2026
7898614
v3/feature/ #176: Add exception handling pipeline behaviors and docs
eneshoxha Jan 25, 2026
ffa3275
v3/feature/ #177 : Add query caching behavior with DI, invalidation, …
eneshoxha Jan 25, 2026
0b117c1
v3/feature/ #178 : Add streaming query support with IAsyncEnumerable
eneshoxha Jan 25, 2026
a38d021
v3/feature/ #179 : Add support for request pre/post processors to Med…
eneshoxha Jan 25, 2026
191b8c9
Merge pull request #181 from buildersoftio/v3/feature/mediator-enhanc…
eneshoxha Jan 25, 2026
204ee82
Integrate Cortex.Streams with Mediator for CQRS pipelines
eneshoxha Jan 25, 2026
f2d82cb
Merge pull request #182 from buildersoftio/v3/feature/117
eneshoxha Jan 25, 2026
2ed1135
Add OneOf/AnyOf (up to 8) and Result types with tests
eneshoxha Jan 28, 2026
9a2bb08
Merge pull request #183 from buildersoftio/v3/feature/172
eneshoxha Jan 28, 2026
d3999c8
Optimize operator allocations and Mediator pipeline
eneshoxha Jan 28, 2026
e7ad09f
Merge pull request #184 from buildersoftio/v3/feature/156
eneshoxha Jan 28, 2026
d060fb0
Simplify StreamBuilder API to use a single type parameter
eneshoxha Jan 28, 2026
18e3856
Merge pull request #186 from buildersoftio/v3/feature/185
eneshoxha Jan 28, 2026
ce849af
Add async buffering & backpressure to stream processing
eneshoxha Jan 28, 2026
8242b75
Merge pull request #187 from buildersoftio/v3/feature/asynchronous-pr…
eneshoxha Jan 28, 2026
29e104b
Add flow style, anchors, tags, comments, and quoting
eneshoxha Jan 29, 2026
959f802
Merge pull request #189 from buildersoftio/v3/feature/188
eneshoxha Jan 29, 2026
5bb2c84
Add stream-table left join support to Streams API
eneshoxha Jan 29, 2026
bfde28e
Add windowed stream-stream join support to Cortex.Streams
eneshoxha Jan 29, 2026
890b445
Merge pull request #190 from buildersoftio/v3/feature/65
eneshoxha Jan 29, 2026
b69a425
Add structured logging to all source/sink operators
eneshoxha Jan 29, 2026
43ddb4c
Add Cortex.States.DuckDb: DuckDB-backed state store
eneshoxha Jan 29, 2026
70d61bf
Merge pull request #192 from buildersoftio/v3/feature/191
eneshoxha Jan 29, 2026
ccf2b92
Remove Unit of Work infrastructure and registration
eneshoxha Jan 29, 2026
f0fb09f
Merge pull request #194 from buildersoftio/v3/feature/193
eneshoxha Jan 29, 2026
4e84596
Support continuation after ForkOperator and fix branch bug
eneshoxha Jan 29, 2026
16e9300
Merge pull request #195 from buildersoftio/v3/feature/45
eneshoxha Jan 29, 2026
e7ee693
Add FanOut: multi-sink stream support with filters
eneshoxha Jan 29, 2026
78cd0da
Merge pull request #196 from buildersoftio/v3/feature/41
eneshoxha Jan 29, 2026
265f5c6
Add transactional behaviors and tests to Mediator
eneshoxha Jan 29, 2026
85ac33e
Merge pull request #202 from buildersoftio/v3/feature/180
eneshoxha Jan 29, 2026
398c86a
Add robust error handling and resource management to operators
eneshoxha Jan 30, 2026
b5513e1
Unify error handling across all stream sink integrations
eneshoxha Jan 30, 2026
2dcf5c2
Merge pull request #204 from buildersoftio/v3/feature/203
eneshoxha Jan 30, 2026
8ce67eb
Unify error handling across all stream sink integrations
eneshoxha Jan 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions Cortex.sln
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "States", "States", "{C31F8C
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Serialization", "Serialization", "{7F9E0AEA-721E-46F8-90ED-8EA8423647FB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cortex.Streams.Mediator", "src\Cortex.Streams.Mediator\Cortex.Streams.Mediator.csproj", "{84410C57-0F59-F31F-B921-4C1F3D3FF144}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cortex.States.DuckDb", "src\Cortex.States.DuckDb\Cortex.States.DuckDb.csproj", "{4FAE6C5E-53EE-4CCE-85A6-B7551A92C488}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cortex.Mediator.Behaviors.Transactional", "src\Cortex.Mediator.Behaviors.Transactional\Cortex.Mediator.Behaviors.Transactional.csproj", "{F7C9F778-EFDB-4F02-8F19-43A9F4A86003}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -196,6 +202,18 @@ Global
{472BC645-9E2F-4205-A571-4D9184747EC5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{472BC645-9E2F-4205-A571-4D9184747EC5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{472BC645-9E2F-4205-A571-4D9184747EC5}.Release|Any CPU.Build.0 = Release|Any CPU
{84410C57-0F59-F31F-B921-4C1F3D3FF144}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{84410C57-0F59-F31F-B921-4C1F3D3FF144}.Debug|Any CPU.Build.0 = Debug|Any CPU
{84410C57-0F59-F31F-B921-4C1F3D3FF144}.Release|Any CPU.ActiveCfg = Release|Any CPU
{84410C57-0F59-F31F-B921-4C1F3D3FF144}.Release|Any CPU.Build.0 = Release|Any CPU
{4FAE6C5E-53EE-4CCE-85A6-B7551A92C488}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4FAE6C5E-53EE-4CCE-85A6-B7551A92C488}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4FAE6C5E-53EE-4CCE-85A6-B7551A92C488}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4FAE6C5E-53EE-4CCE-85A6-B7551A92C488}.Release|Any CPU.Build.0 = Release|Any CPU
{F7C9F778-EFDB-4F02-8F19-43A9F4A86003}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F7C9F778-EFDB-4F02-8F19-43A9F4A86003}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F7C9F778-EFDB-4F02-8F19-43A9F4A86003}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F7C9F778-EFDB-4F02-8F19-43A9F4A86003}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -226,6 +244,9 @@ Global
{4D1F117D-48D7-47AD-9DAC-3B2DB45E628A} = {4C68702C-1661-4AD9-83FD-E0B52B791969}
{44A166BD-01E9-4A4B-9BC5-7DE01B472E73} = {1C5D462D-168D-4D3F-B96E-CCE5517DB197}
{472BC645-9E2F-4205-A571-4D9184747EC5} = {7F9E0AEA-721E-46F8-90ED-8EA8423647FB}
{84410C57-0F59-F31F-B921-4C1F3D3FF144} = {4C68702C-1661-4AD9-83FD-E0B52B791969}
{4FAE6C5E-53EE-4CCE-85A6-B7551A92C488} = {C31F8C0F-8BCF-4959-9BA1-8645D058EAA0}
{F7C9F778-EFDB-4F02-8F19-43A9F4A86003} = {1C5D462D-168D-4D3F-B96E-CCE5517DB197}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {E20303B6-8AC9-4FFF-B645-4608309ADA94}
Expand Down
20 changes: 17 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,9 @@
- **Cortex.Streams:** Core streaming capabilities for building data pipelines.
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.Streams?label=Cortex.Streams)](https://www.nuget.org/packages/Cortex.Streams)

- **Cortex.Streams.Mediator:** Integration of Cortex Streaming with Cortex Mediator
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.Streams.Mediator?label=Cortex.Streams.Mediator)](https://www.nuget.org/packages/Cortex.Streams.Mediator)

- **Cortex.Streams.Kafka:** Integration with Apache Kafka for robust data streaming.
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.Streams.Kafka?label=Cortex.Streams.Kafka)](https://www.nuget.org/packages/Cortex.Streams.Kafka)

Expand Down Expand Up @@ -111,6 +114,9 @@
- **Cortex.States.SQLite:** Persistent state storage using SQLite.
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.States.SQLite?label=Cortex.States.SQLite)](https://www.nuget.org/packages/Cortex.States.SQLite)

- **Cortex.States.DuckDb:** Persistent state storage using DuckDb.
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.States.DuckDb?label=Cortex.States.DuckDb)](https://www.nuget.org/packages/Cortex.States.DuckDb)

- **Cortex.Telemetry:** Core library to add support for Tracing and Matrics.
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.Telemetry?label=Cortex.Telemetry)](https://www.nuget.org/packages/Cortex.Telemetry)

Expand All @@ -126,9 +132,15 @@
- **Cortex.Mediator.Behaviors.FluentValidation:** implementation of the FluentValidation validation for Commands and Queries
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.Mediator.Behaviors.FluentValidation?label=Cortex.Mediator.Behaviors.FluentValidation)](https://www.nuget.org/packages/Cortex.Mediator.Behaviors.FluentValidation)

- **Cortex.Mediator.Behaviors.Transactional:** implementation of the Transactional Behaviors for Commands
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.Mediator.Behaviors.Transactional?label=Cortex.Mediator.Behaviors.Transactional)](https://www.nuget.org/packages/Cortex.Mediator.Behaviors.Transactional)

- **Cortex.Vectors:** is a High‑performance vector types—Dense, Sparse, and Bit—for AI.
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.Vectors?label=Cortex.Vectors)](https://www.nuget.org/packages/Cortex.Vectors)

- **Cortex.Serialization.Yaml:** is a High‑performance data serializer for Yaml
[![NuGet Version](https://img.shields.io/nuget/v/Cortex.Vectors?label=Cortex.Serialization.Yaml)](https://www.nuget.org/packages/Cortex.Serialization.Yaml)


## Getting Started

Expand Down Expand Up @@ -175,7 +187,8 @@ Cortex Data Framework makes it easy to set up and run real-time data processing
### 1. Creating a Stream

```csharp
var stream = StreamBuilder<int, int>.CreateNewStream("ExampleStream")
var stream = StreamBuilder<int>.CreateNewStream("ExampleStream")
.Stream()
.Map(x => x * 2)
.Filter(x => x > 10)
.Sink(Console.WriteLine)
Expand All @@ -197,9 +210,10 @@ Console.WriteLine(stateStore.Get("key1"));

```csharp
var telemetryProvider = new OpenTelemetryProvider();
var stream = StreamBuilder<int, int>
var stream = StreamBuilder<int>
.CreateNewStream("TelemetryStream")
.WithTelemetry(telemetryProvider)
.Stream()
.Map(x => x * 2)
.Sink(Console.WriteLine)
.Build();
Expand Down Expand Up @@ -233,7 +247,7 @@ public class ClickEvent
static void Main(string[] args)
{
// Build the stream
var stream = StreamBuilder<ClickEvent, ClickEvent>.CreateNewStream("ClickStream")
var stream = StreamBuilder<ClickEvent>.CreateNewStream("ClickStream")
.Stream()
.Filter(e => !string.IsNullOrEmpty(e.PageUrl))
.GroupBySilently(
Expand Down
Loading
Loading