Code Monkey home page Code Monkey logo

origodb's Introduction

Important notice!

OrigoDB is no longer under active development. Please check out Memstate which is a complete rewrite of OrigoDB featuring major improvements in the areas performance, availability, licensing, cross-platform, docker and cloud support. Memstate targets .NET Standard 2.0 so will run on .NET Framework >= 4.6.1, .NET Core >= 2.0, Xamarin and Mono.

In-memory database for NET/Mono

An Origo database is a command-sourced in-memory object graph.

Write your custom data model, commands and queries using any .NET language, or choose from a number of existing generic models.

OrigoDB is developed and maintained by Devrex Labs. We offer commercial support, consulting, training and enterprise features.

To learn more, visit the project web site and read the online documentation.

Join the chat at https://gitter.im/DevrexLabs/OrigoDB

Build status

Example code

//Nuget: Install-Package OrigoDb.Core
//Restore graph by replaying commands stored on disk
//in the current working directory
var engine = Engine.For<MyModel>();

//Log a command to disk and then apply to in-memory graph
engine.Execute(new MyCommand{MyArg = someValue});

//read the in-memory graph using a custom query
var results = engine.Execute(new MyQuery{MyArg = someValue});

// -----------------------------------------
// Example #2 - Implicit operations
// -----------------------------------------
//restore graph and wrap the engine in a proxy
MyModel db = Db.For<MyModel>();

//void methods are translated to commands
db.MyCommand(someValue);

//non-void methods are translated to queries
var results = db.MyQuery(someValue);

Key Strengths

  • As transparent as persistence can get
  • Rapid development, 50% less code on the backend
  • High performance, complex transaction processing
  • Suitable for Domain Driven Design
  • Very easy to unit test and debug
  • 100% ACID, fully serialized transactions
  • Powerful queries using LINQ
  • Flexible and extensible data modeling using modern language and full access to the .NET Framework Class library
  • Full audit trail through complete history of commands
  • Mature, used in production all over the world
  • Modular storage backend

Nuget

Install-package OrigoDB.Core

Links

origodb's People

Contributors

gitter-badger avatar patriksvensson avatar rofr avatar waffle-iron avatar yazgoo avatar

Watchers

 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.