Popularity
1.9
Declining
Activity
0.0
Stable
2
2
0
Monthly Downloads: 17
Programming language: Haskell
License: MIT License
Tags:
Database
Latest version: v0.3.0.0
ejdb2-binding alternatives and similar packages
Based on the "Database" category.
Alternatively, view ejdb2-binding 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. -
squeal-postgresql
Squeal, a deep embedding of SQL in Haskell -
acid-state
Add ACID guarantees to any serializable Haskell data structure -
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. -
postgresql-simple
Mid-level client library for accessing PostgreSQL from Haskell -
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 -
esqueleto
Bare bones, type-safe EDSL for SQL queries on persistent backends. -
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. -
postgresql-simple-migration
PostgreSQL Schema Migrations for Haskell -
vcache-trie
large, persistent, memcached values and structure sharing for Haskell -
vcache
large, persistent, memcached values and structure sharing for Haskell -
direct-sqlite
Low-level binding to SQLite3. Includes UTF8 and BLOB support. -
haskelldb
A library for building re-usable and composable SQL queries. -
dbmigrations
A library for the creation, management, and installation of schema updates for relational databases. -
postgresql-tx
[Moved to: https://github.com/Simspace/postgresql-tx] -
postgresql-orm
An Haskell ORM (Object Relational Mapping) and migrations DSL for PostgreSQL. -
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. -
persistent-database-url
Parse DATABASE_URL into configuration types for Persistent
Clean code begins in your IDE with SonarLint
Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
Promo
www.sonarlint.org
* 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 ejdb2-binding or a related project?
README
ejdb2haskell
ejdb2haskell is a Haskell binding to ejdb2, an embeddable JSON Database engine C library.
Requirements
libejdb2
Install libejdb2 by installing ejdb2
In Arch Linux I do:
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
sudo make install
Build
cabal build
Usage
Every API are tested, so have a look to test folder.
putNewTest :: IO Database -> TestTree
putNewTest databaseIO = testCase "putNewTest" $ do
database <- databaseIO
id <- putNew database "plants" plant
storedPlant <- getById database "plants" id
storedPlant @?= Just plant
where
plant = Plant { name = Just "pinus"
, isTree = Just True
, year = Just 1753
, description = Just "wow 🌲"
}
getListTest' :: IO Database -> TestTree
getListTest' databaseIO = testCase "getList'" $ do
database <- databaseIO
query <- Query.fromString "@plants/[isTree=:tree] | asc /name"
Query.setBool False "tree" query
plants <- getList' database query
plants @?= [ Just Plant { id = Just 2
, name = Just "gentiana brentae"
, isTree = Just False
, year = Just 2008
, description = Just "violet 🌺flower"
, ratio = Nothing
}
, Just Plant { id = Just 3
, name = Just "leontopodium"
, isTree = Just False
, year = Just 1817
, description = Just "tipical alpine flower"
, ratio = Nothing
}
, Just Plant { id = Just 4
, name = Just "leucanthemum vulgare"
, isTree = Just False
, year = Just 1778
, description =
Just "very common flower in Italy 🍕"
, ratio = Just 1.618
}
]