Introduction

Irmin is a key-value store based on the same priciples as Git. It provides many familiar Git features: branching/merging, history, and the ability to restore to any previous state.

Typically Irmin is accessed by embedding it into an OCaml application, but there are also several tools that allow you to use it as a standalone server, like irmin-http, irmin-rpc, irmin-graphql, and irmin-resp.

It is most often used to store application data, like configuration values, shared state, or checkpoint data, but it can also be used as a general purpose, key-value store. Additionally, since it is compatible with Git, Irmin can be used to interact with Git repositories directly from your application.

Take a moment to skim the README to familiarise yourself with some of the concepts. Also, if you find that anything is missing or unclear in this tutorial, please file an issue!