Git Product home page Git Product logo

greyoy / cqrs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from chinchilla-software-com/cqrs

0.0 0.0 0.0 18.76 MB

A lightweight enterprise framework to help write CQRS and Eventsourcing applications in C# and Azure

Home Page: http://www.getcqrs.net/

License: GNU Lesser General Public License v2.1

Batchfile 0.01% C# 12.63% PowerShell 0.02% CSS 1.07% ASP 0.01% HTML 3.50% JavaScript 82.70% PLpgSQL 0.08%

cqrs's Introduction

CQRS.NET

The framework

A lightweight enterprise framework to help write CQRS and Eventsourcing applications in C#, with a special focus on deploying to Azure. Currently published as nuget packages @ http://www.nuget.org. It is written in C# and targets .NET 4.0, with the exception of some Azure packages which target .NET 4.5. CQRS.NET borrows heavily from CQRSlite (https://github.com/gautema/cqrslite), from some point in 2013.

CQRS.NET has been designed with modularity in mind... see the number of technology packages below you can chose from. Every package and design choice made should be interchangeable with custom code if needed.

Tutorials and getting started

For those wanting to take a plunge into using the CQRS.NET, we strongly suggest you have a look at our basic Northwind Tutorial.

And for those looking for a more thorough tutorial we suggest you start with the getting started section in the wiki

Documentation

Documentation is starting off for now in the wiki section of this project. We strongly invite people to post questions and issues which we'll answer and work on.

Sample projects.

Several sample projects are located within the code, these show two approaches/common usage scenarios of the framework. One sample is the original sample from CQRSlite, ported to use CQRS.NET, the other is Modelled in UML and uses T4 template generation to heavily reduce the amount of code written.

The project should compile without any setup in .NET 4.0. The Azure project should compile without any setup in .NET 4.5.2. I'm guessing Mono 3.10.0 should work too.

Commerical Support

Commercial support is now available through our partner company Chinchilla Software.

Continual improvements

This project is actively developed, however we sometimes have specific feature requests that are outside of our roadmap and plan. We're always open to new ideas and requests for new modules and technology connectors that you need. The biggest requests in version 2.0 where to have better akka.net modules as well as support for Azure blob/table storage and performance/telemetry.

Features

  • Command sending and event publishing
  • Unit of work through session with aggregate tracking (I'm tempted to remove the UOW)
  • Repository for getting and saving aggregates and process managers
  • Strategy/Specification pattern for querying
  • Optimistic concurrency checking
  • In process bus with autoregistration of handlers
  • Azure service bus for event bus'ing
  • Azure service bus for command bus'ing
  • Greg Youngs EventStore for event sourcing
  • MongoDB for entity, view and project persistence
  • Azure DocumentDB for event sourcing, entity, view and project persistence
  • SqlServer for entity, view and project persistence... Strongly don't recommend you use this though.

Installation

See Installation in the wiki.

Projects / Nuget packages:

See Nuget Packages in the wiki.

cqrs's People

Contributors

cdmdotnet avatar aleenabhat12 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.