Relinq
Marten
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Relinq
-
Yet another embedded DB (kind of)
First attempt was pretty awful... Believe it or not, writing a LINQ provider can be hard. I made a break and investigated further, how existing ORMs and Marten are implementing LINQ providers. Library that some of the ORMs are using (or were using) is called relinq. Documentation isn't great but there a a couple of examples on how to use it. Reqlinq separates single LINQ expression into multiple expressions (where, select, order, ...) Armed with new awesome library I decided to have another go on writing my own little DAL library with SQLite as a store. It is far from complete, it doesn't yet have async operations, it is missing LINQ transformations in Select expression, performance is bad (like 10x slower than EF Core with SQLite),... there is a lot of work left to be done.
-
How to implement a linq provider?
The best way to go about it seemed to be using Remotion’s relinq. I even managed to find one example to base my work off.
-
After a few months of work I finally get to use my query builders :D
Well, there are LINQ Parsing pipelines out there, namely ReLinq.
Marten
- Marten – .NET Transactional Document DB and Event Store on PostgreSQL
-
Dapper vs. Entity Framework With Postgres
Id recommend trying out MartenDb. It's not really a PostgreSQL ORM, it actually uses Postgres more as a document database via jsonb. But it's excruciatingly easy to use and schema updates are a breeze (and largely automatic)
-
Show HN: Light implementation of Event Sourcing using PostgreSQL as event store
Check out Marten for a fully fleshed out implementation https://github.com/JasperFx/marten
-
Is anyone using Dapr
We are using ExtCore here to make our app modular: https://extcore.net/, and MartenDB for event store (which is surprisingly VERY simple) : https://martendb.io/
-
Yet another embedded DB (kind of)
I always loved Marten, it is so simple to use and yet powerful. If you are unfamiliar with it, it is a data access library (like an ORM) that is using JSON serialization and LINQ to store and query data from/to Postgres. It basically turns Postgres into document DB. Comparing it to EF, Marten doesn't require migrations since it stores documents.
-
This article is covering the potential problems you will face when using MongoDB for typical relational tasks.
You're better off using Postgres (has JSON columns.) If you want a more "document" oriented experience, use Marten: https://martendb.io/
-
Self-Paced Kit: Introduction to Event Sourcing with Node.js and TypeScript
For that part, the samples use EventStoreDB (https://www.eventstore.com/), which is the only mature event store I know in Node.js land. Event Sourcing allows using any database as backing storage. I'm co-maintainer of the Marten (https://martendb.io/), which is a .NET library that allows using Postgres as event store and document db.
-
CQRS is simpler than you think with C#11 and .NET 7!
Then you should check out Marten (https://martendb.io/). Our intention is to remove the boilerplate, we're using Postgres e having the built-in projections.
- Event-driven projections in Marten explained
-
Marten, a Crystal web framework that makes building web apps productive and fun
Not to be confused with the C# document database built on Postgres.
https://martendb.io/
What are some alternatives?
ArgoStore - .NET Embedded Transactional Document DB
Event Store - EventStoreDB, the event-native database. Designed for Event Sourcing, Event-Driven, and Microservices architectures
Sels.Core
MongoDB - The MongoDB Database
RavenDB - ACID Document Database
Yessql - A .NET document database working on any RDBMS
efcore.pg - Entity Framework Core provider for PostgreSQL
LiteDB - LiteDB - A .NET NoSQL Document Store in a single data file
FluentMigrator - Fluent migrations framework for .NET
Streamstone - Event store for Azure Table Storage
Db4o-gpl - new Db4o GPL Source Code for Java7+ & .netstardard2.0 Android Xamarin..., the best database project to help you to learn how to make databases
Apache Ignite - Apache Ignite