Skip to content

Commit

Permalink
adding some new links
Browse files Browse the repository at this point in the history
  • Loading branch information
mehdihadeli committed Mar 20, 2022
1 parent 67deff6 commit 7eba11f
Show file tree
Hide file tree
Showing 23 changed files with 50 additions and 17 deletions.
2 changes: 2 additions & 0 deletions docs/architectural-patterns/cqrs.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,8 @@
- [Event Sourcing and CQRS](https://zimarev.com/blog/event-sourcing/cqrs/)
- [Overselling Event Sourcing](https://zimarev.com/blog/event-sourcing/myth-busting/2020-07-09-overselling-event-sourcing/)
- [Live projections for read models with Event Sourcing and CQRS](https://www.eventstore.com/blog/live-projections-for-read-models-with-event-sourcing-and-cqrs)
- [6 Code Smells with your CQRS Events – and How to Avoid Them](https://danielwhittaker.me/2014/10/18/6-code-smells-cqrs-events-avoid/)

## 📺 Videos
- [CQRS is simpler than you think with C#9 and .NET 5!](https://www.eventstore.com/webinars/cqrs-is-simpler-than-you-think)
- [Is CQRS Complicated? No, it's simple!](https://www.youtube.com/watch?v=LbVpPQaAgVY)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@
- [Implementing Domain Driven Design: Part II](https://dev.to/salah856/implementing-domain-driven-design-part-ii-2i36)
- [Implementing Domain Driven Design: Part III](https://dev.to/salah856/implementing-domain-driven-design-part-iii-pe8)
- [Implementing Domain Driven Design: Part IV](https://dev.to/salah856/implementing-domain-driven-design-part-iv-29m2)
- [What is domain-centric architecture?](https://jlasoc.medium.com/what-is-domain-centric-architecture-e030e609c401)
## 📺 Videos
- [Java EE: Design Patterns and Architecture](https://www.linkedin.com/learning/java-ee-design-patterns-and-architecture/advantages-and-disadvantages-4)
- [AVOID Entity Services by Focusing on Capabilities](https://www.youtube.com/watch?v=2gOOstEI4vU)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
- [Practical DDD in Golang: Domain Event](https://levelup.gitconnected.com/practical-ddd-in-golang-domain-event-de02ad492989)
- [Simple Domain Events with EFCore and MediatR](https://cfrenzel.com/domain-events-efcore-mediatr/)
- [Design validations in the domain model layer](https://docs.microsoft.com/en-us/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/domain-model-layer-validations)

- [6 Code Smells with your CQRS Events – and How to Avoid Them](https://danielwhittaker.me/2014/10/18/6-code-smells-cqrs-events-avoid/)
## 🚀 Samples
- [ardalis/CleanArchitecture](https://github.com/ardalis/CleanArchitecture/blob/main/src/Clean.Architecture.Infrastructure/Data/AppDbContext.cs)
- [vietnam-devs/coolstore-microservices](https://github.com/vietnam-devs/coolstore-microservices/blob/da6b9e0d0120693e0239a1dc4077ba452163d61a/src/BasicBuildingBlocks/N8T.Infrastructure.EfCore/Extensions.cs#L63)
Expand Down
13 changes: 10 additions & 3 deletions docs/architectural-patterns/event-sourcing.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,9 @@
- [Event Schema Versioning](https://github.com/oskardudycz/EventSourcing.NetCore/tree/main/Sample/EventsVersioning)
- [Event Sourcing: Snapshotting](https://domaincentric.net/blog/event-sourcing-snapshotting)
- [Convince your CTO to use Event Sourcing](https://www.eventstore.com/blog/convincing-your-cto)

- [The Right Way - Event Sourcing done right](https://eventuous.dev/docs/prologue/the-right-way/)
- [Event Sourcing - Kamil](https://github.com/kgrzybek/modular-monolith-with-ddd#315-event-sourcing)
- [What they don’t tell you about event sourcing](https://medium.com/@hugo.oliveira.rocha/what-they-dont-tell-you-about-event-sourcing-6afc23c69e9a)
## 📺 Videos
- [Event Sourcing Playlist - CodeOpinion](https://www.youtube.com/playlist?list=PLThyvG1mlMzkRKJnhzvxtSAbY8oxENLUQ)
- [Event Sourcing Example & Explained in plain English](https://www.youtube.com/watch?v=AUj4M-st3ic)
Expand Down Expand Up @@ -160,7 +162,7 @@
- [Event sourcing meetup with Alexey Zimarev and Greg Young](https://www.youtube.com/watch?v=DDefPUCB9ao)
- [PostgreSQL as NoSql with Marten by Pavlo Tsybulivskyi](https://www.youtube.com/watch?v=gZX6nrudTL0)
- [Understanding Event Sourcing Basics [.NET C#]](https://www.youtube.com/watch?v=EGYMNsI_Opo)

- [Understanding When to Snapshot [.NET C#]](https://www.youtube.com/watch?v=Y0EshPK32cg)
## 📦 Libraries
- [Eventuous/eventuous](https://github.com/Eventuous/eventuous) - Minimalistic Event Sourcing library for .NET
- [EventFlow](https://github.com/eventflow/EventFlow) - Async/await first CQRS+ES and DDD framework for .NET
Expand All @@ -182,6 +184,9 @@
- [liquidprojections/LiquidProjections](https://github.com/liquidprojections/LiquidProjections)
- [EventStore/replicator](https://github.com/EventStore/replicator) - Real-time replication tool
- [nstoredev/NStore](https://github.com/nstoredev/NStore)
- [IEvangelist/azure-cosmos-dotnet-repository](https://github.com/IEvangelist/azure-cosmos-dotnet-repository) - Wraps the .NET SDK for Azure Cosmos DB abstracting away the complexity, exposing a simple CRUD-based repository pattern
- [ForrestTech/Eventus](https://github.com/ForrestTech/Eventus) - A framework for creating updating and storing event sourced aggregates using a range of storage providers.
- [NEventStore/NEventStore](https://github.com/NEventStore/NEventStore) - A persistence agnostic Event Store for .NET
## 🚀 Samples
- [VenomAV/EventSourcingCQRS](https://github.com/VenomAV/EventSourcingCQRS)
- [oskardudycz/EventSourcing.NetCore/Sample/EventStoreDB/Simple](https://github.com/oskardudycz/EventSourcing.NetCore/tree/main/Sample/EventStoreDB/Simple)
Expand All @@ -204,4 +209,6 @@
- [Reacture/FoxOffice](https://github.com/Reacture/FoxOffice) - Sample application demonstrating how to build a distributed cloud .NET Core application based on CQRS and Event Sourcing.
- [amolenk/CosmosEventSourcing](https://github.com/amolenk/CosmosEventSourcing) - Example of event sourcing implemented with Cosmos DB
- [UbiquitousLanguage/WorkshopEventSourcing](https://github.com/UbiquitousLanguage/WorkshopEventSourcing) - Practical event-sourcing with C# workshop repository
- [madslundt/NetCoreMicroservicesSample](https://github.com/madslundt/NetCoreMicroservicesSample)
- [madslundt/NetCoreMicroservicesSample](https://github.com/madslundt/NetCoreMicroservicesSample)
- [Eventuous/dotnet-sample](https://github.com/Eventuous/dotnet-sample) - Sample application using Eventuous .NET
- [oskardudycz/EventSourcing.NetCore/Workshops/IntroductionToEventSourcing](https://github.com/oskardudycz/EventSourcing.NetCore/tree/main/Workshops/IntroductionToEventSourcing) - Introduction to Event Sourcing Workshop
3 changes: 2 additions & 1 deletion docs/architectural-patterns/microservices/microservices.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,10 +136,11 @@
- [Building FeedR - Apache Pulsar integration (Microservices with .NET 6.0) episode #9](https://www.youtube.com/watch?v=WB72UGqTDoY)
- [Building FeedR - Message Correlation ID (Microservices with .NET 6.0) episode #10](https://www.youtube.com/watch?v=HXmOJR653FI)
- [Async Web API testing with TaskCompletionSource (Microservices with .NET 6.0) - FeedR episode #11}(https://www.youtube.com/watch?v=N-ofc345-58)
- [Portainer microservices deployment (Microservices with .NET 6.0) - FeedR episode #12](https://www.youtube.com/watch?v=tBl422FiEBY)
- [.NET Microservices Basics Course](https://www.youtube.com/watch?v=ByYyk8eMG6c)
- [Building Event-Driven Microservices with Event Sourcing and CQRS - Lidan Hifi](https://www.youtube.com/watch?v=XWTrcBqXi6s)
- [Light and Dark Side of the Event-Driven Design • Oskar Dudycz • Devoxx Poland 2021](https://www.youtube.com/watch?v=0pYmuk0-N_4)

- [Microservices gets it WRONG defining Service Boundaries](https://www.youtube.com/watch?v=Uc7SLJbKAGo)
## 📦 Libraries

- [dotnet/tye](https://github.com/dotnet/tye) - Tye is a tool that makes developing, testing, and deploying microservices and distributed applications easier. Project Tye includes a local orchestrator to make developing microservices easier and the ability to deploy microservices to Kubernetes with minimal configuration.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,5 @@
- [Building Modular Monolith with ASP.NET Core, .NET 5 and C# 9 - Event Storming Process/Design #Live 3](https://www.youtube.com/watch?v=nUgcrEO0xpk)
- [Building Modular Monolith with ASP.NET Core, .NET 5 and C# 9 - Event Storming summary #Live 4](https://www.youtube.com/watch?v=fIOMxBc4-fI)
- [Bounded Contexts, Microservices, and Everything In Between - Vladik Khononov - KanDDDinsky 2018](https://www.youtube.com/watch?v=dlnu5pSsg7k)
- [DDD & Microservices: At Last, Some Boundaries! • Eric Evans • GOTO 2015](https://www.youtube.com/watch?v=yPvef9R3k-M)
- [DDD & Microservices: At Last, Some Boundaries! • Eric Evans • GOTO 2015](https://www.youtube.com/watch?v=yPvef9R3k-M)
- [Microservices gets it WRONG defining Service Boundaries](https://www.youtube.com/watch?v=Uc7SLJbKAGo)
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,4 @@
- [twzhangyang/RestAirline](https://github.com/twzhangyang/RestAirline) - DDD+CQRS+EventSourcing+Hypermedia API+ASP.NET Core 3.1+Masstransit+terraform+docker+k8s
- [matjazbravc/Microservice.Architecture.Demo](https://github.com/matjazbravc/Microservice.Architecture.Demo) - This demo shows a working sample of microservices architecture using ASP.NET Core. It covers how to create microservices, how to create API gateways using Ocelot, how to use MassTransit as distributed application framework, RabbitMQ as message broker, how to unit test microservices using xUnit, how to monitor microservices using health checks
- [maldworth/tutorial-masstransit-send-vs-publish](https://github.com/maldworth/tutorial-masstransit-send-vs-publish) - [http://www.maldworth.com/2015/10/27/masstransit-send-vs-publish/](http://www.maldworth.com/2015/10/27/masstransit-send-vs-publish/)
- [MassTransit Samples](https://masstransit-project.com/learn/samples.html)
2 changes: 2 additions & 0 deletions docs/architectural-style/event-driven-architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@
- [How to DESIGN EVENT-DRIVEN applications! The best method for production applications!](https://www.youtube.com/watch?v=LaxH8GS8l3Q)
- [Building a Webhooks System](https://www.youtube.com/watch?v=NuHC5uwbFAc)
- [The Dark Side of Events](https://www.youtube.com/watch?v=URYPpY3SgS8)
- [Event Driven Architecture in the Real World! 4 Practical Examples](https://www.youtube.com/watch?v=dhdLxW0vDro)
- [Event Driven Architecture - Understanding the Basics](https://www.youtube.com/watch?v=LHgCA3XVNkw)
## 📚 Books
- [Designing Event-Driven Systems](https://www.confluent.io/designing-event-driven-systems/)
- [Building Event-Driven Microservices: Leveraging Organizational Data at Scale](https://www.amazon.com/Building-Event-Driven-Microservices-Leveraging-Organizational/dp/1492057894)
Expand Down
1 change: 1 addition & 0 deletions docs/architectural-style/vertical-slice-architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@
- [Avoiding Premature Software Abstractions](https://betterprogramming.pub/avoiding-premature-software-abstractions-8ba2e990930a)
- [CQRS is simpler than you think with .NET 6 and C# 10](https://event-driven.io/en/cqrs_is_simpler_than_you_think_with_net6/)
- [Building REST APIs In .Net 6 The Easy Way!](https://dev.to/djnitehawk/building-rest-apis-in-net-6-the-easy-way-3h0d)
- [Organize by Feature](https://codeopinion.com/organize-by-feature/)
## 📺 Videos

- [SOLID Architecture in Slices not Layers - Jimmy Bogard](https://vimeo.com/131633177)
Expand Down
3 changes: 2 additions & 1 deletion docs/cloud-native/devops/ci-cd/github-actions.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,5 @@
- [peter-evans/docker-compose-actions-workflow](https://github.com/peter-evans/docker-compose-actions-workflow) - GitHub Actions workflow example using Docker Compose to build and test a multi-container stack
- [dorny/test-reporter](https://github.com/dorny/test-reporter) - Displays test results from popular testing frameworks directly in GitHub
- [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) - GitHub Action to set up Docker Buildx
- [docker/build-push-action](https://github.com/docker/build-push-action) - GitHub Action to build and push Docker images with Buildx
- [docker/build-push-action](https://github.com/docker/build-push-action) - GitHub Action to build and push Docker images with Buildx
- [brandedoutcast/publish-nuget](https://github.com/brandedoutcast/publish-nuget) - 📦 GitHub action to automate publishing NuGet packages when project version changes
3 changes: 2 additions & 1 deletion docs/concurrency.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,5 @@
- [Handling Concurrency in EF-Core](https://www.learnentityframeworkcore5.com/handling-concurrency-in-ef-core)
- [Optimistic Concurrency Management in EntityFramework Core](https://codeburst.io/optimistic-concurrency-management-in-entityframework-core-79a4921067cb)
- [Solving Concurrency in Event-Driven Microservices](https://medium.com/@hugo.oliveira.rocha/solving-concurrency-in-event-driven-microservices-79bbc13b597c)
- [Optimistic concurrency in Event Store](https://developers.eventstore.com/clients/dotnet/5.0/appending.html#optimistic-concurrency)
- [Optimistic concurrency in Event Store](https://developers.eventstore.com/clients/dotnet/5.0/appending.html#optimistic-concurrency)
- [Solving Concurrency in Event-Driven Microservices](https://itnext.io/solving-concurrency-in-event-driven-microservices-79bbc13b597c)
2 changes: 1 addition & 1 deletion docs/design-best-practices/design-best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
- [donnemartin/system-design-primer](https://github.com/donnemartin/system-design-primer) - Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
## 📕 Articles
- [Static methods considered evil?](https://enterprisecraftsmanship.com/posts/static-methods-evil/)

- [Design Best Practices In .NET C#](https://levelup.gitconnected.com/design-best-practices-in-net-c-8e37b7c3500a)
## 📺 Videos
- [TS001.1: Common Questions About The Standard](https://www.youtube.com/watch?v=Au7G_y4BkbY)
- [The Power of Composition - Scott Wlaschin - NDC Oslo 2020](https://www.youtube.com/watch?v=rCKPgu4DvcE)
Expand Down
3 changes: 2 additions & 1 deletion docs/design-patterns/builder.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@
## 📕 Articles
- [SOLID Wash Tunnel - Fluent Builder (part 1/3)](https://www.ledjonbehluli.com/posts/wash-tunnel/fluent_builder_part_1/)
- [SOLID Wash Tunnel - Fluent Builder (part 2/3)](https://www.ledjonbehluli.com/posts/wash-tunnel/fluent_builder_part_2/)
- [SOLID Wash Tunnel - Fluent Builder (part 3/3)](https://www.ledjonbehluli.com/posts/wash-tunnel/fluent_builder_part_3/)
- [SOLID Wash Tunnel - Fluent Builder (part 3/3)](https://www.ledjonbehluli.com/posts/wash-tunnel/fluent_builder_part_3/)
- [Builder Design Pattern in .NET C#](https://levelup.gitconnected.com/builder-design-pattern-in-net-c-bbf11c891548)
1 change: 1 addition & 0 deletions docs/design-patterns/chain-of-responsibility.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@
- [Design Pattern : chain of responsibility implementation in Java](http://myjavaadventures.com/blog/2015/12/25/design-pattern-implementing-a-chain-of-responsibility-in-java/)
- [Decoupling with Chain of Responsibility Pattern in C#](https://medium.com/net-core/decoupling-with-chain-of-responsibility-pattern-in-c-1273329ed923)
- [SOLID Wash Tunnel - Chain of Responsibility](https://www.ledjonbehluli.com/posts/wash-tunnel/chain_of_responsibility/)
- [Chain of Responsibility Design Pattern In .NET C#](https://levelup.gitconnected.com/chain-of-responsibility-design-pattern-in-net-c-666bb4dc2816)
## 📺 Videos
- [C# Design Patterns: Chain of Responsibility | Pluralsight](https://www.pluralsight.com/courses/c-sharp-design-patterns-chain-responsibility)
3 changes: 2 additions & 1 deletion docs/design-patterns/mediator-pattern.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,5 @@
- [MediatR Pipeline Examples](https://lostechies.com/jimmybogard/2016/10/13/mediatr-pipeline-examples/)
- [Mediator Behaviors](https://github.com/jbogard/MediatR/wiki/Behaviors)
- [Applying cross-cutting concerns in ASP.NET Core with MediatR using behaviors](https://lurumad.github.io/cross-cutting-concerns-in-asp-net-core-with-meaditr)
- [You probably don't need MediatR](https://arialdomartini.github.io/mediatr)
- [You probably don't need MediatR](https://arialdomartini.github.io/mediatr)
- [Mediator Design Pattern In .NET C#](https://levelup.gitconnected.com/mediator-design-pattern-in-net-c-e1bfcc96789d)
4 changes: 4 additions & 0 deletions docs/design-patterns/observer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Observer Pattern

## Articles
- [Observer Design Pattern in .NET C#](https://levelup.gitconnected.com/observer-design-pattern-in-net-c-55633462f18e)
4 changes: 3 additions & 1 deletion docs/design-patterns/repository-pattern.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
- [Should you use the Repository Pattern? With CQRS, Yes and No!](https://codeopinion.com/should-you-use-the-repository-pattern-with-cqrs-yes-and-no/)
- [Implement Repository Pattern using .NET EF Core](https://thecodeblogger.com/2021/06/27/implement-repository-pattern-using-net-ef-core/)
- [EF Core Repository with Specification Pattern in .NET](https://thecodeblogger.com/2021/07/01/ef-core-repository-with-specification-pattern-in-net/)
- [Better Enhanced Repository Pattern Implementation in .NET ](https://levelup.gitconnected.com/better-enhanced-repository-pattern-implementation-in-net-c-4e6f4bbe48a9)
## 📺 Videos
- [Repository Pattern with C# and Entity Framework - Mosh Hamedani](https://www.youtube.com/watch?v=rtXpYpZdOzM)
- [Step by Step - Repository Pattern and Unit of Work with Asp.Net Core 5](https://www.youtube.com/watch?v=-jcf1Qq8A-4)
Expand All @@ -47,4 +48,5 @@
- [brunohbrito/MongoDB-RepositoryUoWPatterns](https://github.com/brunohbrito/MongoDB-RepositoryUoWPatterns) - Example of an implementation of Repository and Unit of Work Patterns with MongoDB for ASP.NET Core.
- [TanvirArjel/EFCore.GenericRepository](https://github.com/TanvirArjel/EFCore.GenericRepository) - This repository contains Generic Repository implementation for Entity Framework Core
- [Daniel127/EF-Unit-Of-Work](https://github.com/Daniel127/EF-Unit-Of-Work) - Repository and Unit of Work pattern implementation for Entity Framework Core.
- [SharpRepository/SharpRepository](https://github.com/SharpRepository/SharpRepository) - C# Generic Repository for use with Entity Framework, RavenDB and more with built-in caching options.
- [SharpRepository/SharpRepository](https://github.com/SharpRepository/SharpRepository) - C# Generic Repository for use with Entity Framework, RavenDB and more with built-in caching options.
- [AhmedTarekHasan/BetterRepository](https://github.com/AhmedTarekHasan/BetterRepository)
3 changes: 2 additions & 1 deletion docs/design-patterns/strategy-pattern.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@
- [Strategy Pattern in ASP.NET Core](https://www.ezzylearning.net/tutorial/strategy-pattern-in-asp-net-core)
- [3 Ways to Implement Strategy Design Pattern in C#](https://levelup.gitconnected.com/3-ways-to-implement-strategy-design-pattern-in-c-a58548d8a4ad)
- [Building a CachedRepository via Strategy Pattern](https://ardalis.com/building-a-cachedrepository-via-strategy-pattern/?utm_sq=glv8x7culc)

- [Strategy Design Pattern In .NET C#](https://levelup.gitconnected.com/strategy-design-pattern-in-net-c-b9dbd863c31e)
- [Advanced Dependency Injection Techniques in ASP.NET Core](https://medium.com/geekculture/advanced-dependency-injection-techniques-in-asp-net-core-3e6e9e0c541a)
## 📺 Videos

- [SOLID Principles for C# Developers](https://www.pluralsight.com/courses/csharp-solid-principles)
Expand Down
2 changes: 1 addition & 1 deletion docs/eventual-consistency.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@

- [Processing multiple aggregates – transactional vs eventual consistency](http://www.kamilgrzybek.com/design/processing-multiple-aggregates-transactional-vs-eventual-consistency/)
- [Eventual Consistency for Mere Mortals](https://ralfw.de/eventual-consistency-for-mere-mortals/)

- [The Perils of Event-Driven: Eventual Consistency](https://medium.com/@hugo.oliveira.rocha/handling-eventual-consistency-11324324aec4)
## Videos
- [Eventual Consistency is a UX Nightmare](https://www.youtube.com/watch?v=wEUTMuRSZT0)
2 changes: 1 addition & 1 deletion docs/messaging/kafka.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
- [confluentinc/confluent-kafka-dotnet/](https://github.com/confluentinc/confluent-kafka-dotnet/) - Confluent's Apache Kafka .NET client
- [edenhill/kcat](https://github.com/edenhill/kcat) - Generic command line non-JVM Apache Kafka producer and consumer
- [Confluent.SchemaRegistry](https://www.nuget.org/packages/Confluent.SchemaRegistry/)

- [provectus/kafka-ui](https://github.com/provectus/kafka-ui) - Open-Source Web GUI for Apache Kafka Management
## 🚀 Samples
- [dcomartin/Kafka.Demo](https://github.com/dcomartin/Kafka.Demo)
- [oskardudycz/kafka-connect](https://github.com/oskardudycz/kafka-connect)
Expand Down
Loading

0 comments on commit 7eba11f

Please sign in to comment.