• Stars
    star
    21
  • Rank 1,084,038 (Top 22 %)
  • Language
    Elixir
  • License
    Apache License 2.0
  • Created about 10 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Cayley driver for Elixir

Caylir

Cayley driver for Elixir

Cayley Support

Tested Cayley versions:

  • 0.7.3
  • 0.7.4
  • 0.7.5
  • 0.7.6

Package Setup

To use Caylir with your projects, edit your mix.exs file and add the required dependencies:

defp deps do
  [
    # ...
    {:caylir, "~> 1.0"},
    # ...
  ]
end

Application Setup

Graph Definition

Defining a graph connection requires defining a module:

defmodule MyGraph do
  use Caylir.Graph, otp_app: :my_app
end

This defined graph module needs to be hooked up into your supervision tree:

children = [
  # ...
  MyGraph,
  # ...
]

For a more detailed explanation of how to get started with a graph please consult the inline documentation of the Caylir.Graph module.

To configure your connection you can use the application environment:

config :my_app, MyGraph,
  host: "cayley.host",
  port: 42160,
  scheme: "https"

The entry should match the chosen :otp_app and module name defined earlier.

For more information on how (and what) to configure please refer to the inline documentation of the Caylir.Graph.Config module.

Usage

Querying data:

MyGraph.query("graph.Vertex('graph').Out('connection').All()")

Writing Data:

MyGraph.write(%{
  subject: "graph",
  predicate: "connection",
  object: "target"
})

Deleting Data:

MyGraph.delete(%{
  subject: "graph",
  predicate: "connection",
  object: "target"
})

A more detailed usage documentation can be found inline at the Caylir.Graph module.

License

Apache License, Version 2.0