gim v1.0.0 Gim View Source

Schema-based In-Memory Graph Database..

Usage

Add Gim to your application by adding {:gim, "~> 1.0.0"} to your list of dependencies in mix.exs:

def deps do
  [
    # ...
    {:gim, "~> 1.0.0"}
  ]
end

Usage

Create a repo:

defmodule MyApp.Repo do
  use Gim.Repo, otp_app: :my_app
end

And schemas:

defmodule MyApp.Author do
  use Gim.Schema
  alias MyApp.Post
  schema do
    property :name, index: :unique
    property :age, default: 0
    has_edges :posts, Post
  end
end

Use queries:

a = %Author{name: "William Gibson"} |> Repo.insert()

Repo.all(Author)