March 31, 2017

Marten - dotnet core package a day - 12


This post is part of a series, dotnet core package a day, where for 15 days I will be posting an overview of an awesome OSS dotnet package that already has support for dotnet core. In this post we will cover Marten.

Postgresql as a Document Database and Event Store for .Net Applications

Marten development is led by Jeremy Miller and is a relatively young OSS project. Even in it's infancy it has captured the attention of the dotnet community, in under 18 months it has seen 1500+ commits from just under 50 contributors. At the time of writing it has 25,253 downloads on NuGet. The publish of it's v1.0.0 release to NuGet on the 14th September 2016 added support for dotnet core (.net standard 1.3).

I think it's fair to say Marten took some of it's inspiration from RavenDB, one of the main goals is to have the many advantages of a schemaless document database (like RavenDB) but based on a technology like PostgreSQL, which is much more widely used in production.

In the end, what we’d really like to have is all the development advantages of RavenDb and document databases, but have full ACID support, all the DevOps tooling that already exists around Postgresql, and sit on top of a proven database engine.

Marten makes use of another library we covered earlier in the series, Npgsql.

What the community thinks

tweet tweet tweet tweet


Massive thanks to Jeremy, and the community.

If you don't want to keep checking back for more posts in this series but do want an email in your inbox then you can subscribe to the mailing list below.

Tags: dotnet core Document Database Event Store Marten PostgreSQL