grakn alternatives and similar packages
Based on the "Database" category.
Alternatively, view grakn alternatives based on common mentions on social networks and blogs.
-
erd
Translates a plain text description of a relational database schema to a graphical entity-relationship diagram. -
persistent-redis
Persistence interface for Haskell allowing multiple storage methods. -
postgresql-simple
Mid-level client library for accessing PostgreSQL from Haskell -
acid-state
Add ACID guarantees to any serializable Haskell data structure -
esqueleto
Bare bones, type-safe EDSL for SQL queries on persistent backends. -
HDBC-session
This repository includes a joined query generator based on typefull relational algebra, and mapping tools between SQL values list and Haskell record type. -
groundhog
This library maps datatypes to a relational model, in a way similar to what ORM libraries do in OOP. See the tutorial https://www.schoolofhaskell.com/user/lykahb/groundhog for introduction -
hw-kafka-client
Kafka client for Haskell, including auto-rebalancing consumers -
mysql-simple
A mid-level client library for the MySQL database, intended to be fast and easy to use. -
direct-sqlite
Low-level binding to SQLite3. Includes UTF8 and BLOB support. -
postgresql-simple-migration
PostgreSQL Schema Migrations for Haskell -
vcache
large, persistent, memcached values and structure sharing for Haskell -
dbmigrations
A library for the creation, management, and installation of schema updates for relational databases. -
vcache-trie
large, persistent, memcached values and structure sharing for Haskell -
postgresql-typed
Haskell PostgreSQL library with compile-time type inference -
ampersand
Build database applications faster than anyone else, and keep your data pollution free as a bonus. -
postgresql-orm
An Haskell ORM (Object Relational Mapping) and migrations DSL for PostgreSQL. -
persistent-database-url
Parse DATABASE_URL into configuration types for Persistent
WorkOS - The modern identity platform for B2B SaaS
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of grakn or a related project?
README
Grakn Haskell Client (DEPRECATED)
A Haskell client for Grakn.
Requires Grakn 1.0.0.
Installation
To install the Grakn client, simply add this to your cabal file:
build-depends: grakn
You will also need access to a Grakn database. Head here to get started with Grakn.
Quickstart
Begin by importing the client:
{-# LANGUAGE OverloadedStrings #-}
module Example where
import Grakn
import Data.Function ((&))
Define the type labels:
person :: Label
person = label "person"
husband :: Label
husband = label "husband"
wife :: Label
wife = label "wife"
marriage :: Label
marriage = label "marriage"
Define the variables:
x :: Var
x = var "x"
y :: Var
y = var "y"
We can translate the following query into Haskell:
match $x isa person, (husband: $x, wife: $y) isa marriage; get $y;
query :: GetQuery
query = match
[ x `isa` person
, rel [husband .: x, wife .: y] `isa` marriage
] & get [y]
We can also use infix functions like (-:)
instead of isa
:
otherQuery :: GetQuery
otherQuery = match
[ x -: person
, rel [husband .: x, wife .: y] -: marriage
] & get [y]
To execute and print the results of our query:
client :: Client
client = Client defaultUrl "my-keyspace"
main :: IO ()
main = do
result <- execute client query
print result