{"repo":"valderman/selda","free":true,"listed":false,"github":"https://github.com/valderman/selda","clone":"git clone https://github.com/valderman/selda.git","description":"A type-safe, high-level SQL library for Haskell","language":"Haskell","stars":479,"topics":["sql","sqlite","haskell-library","dsl","postgresql"],"license":"MIT","category":"databases-storage","readme_excerpt":"Selda ===== What is Selda? ============== Selda is a Haskell library for interacting with SQL-based relational databases. It was inspired by LINQ and Opaleye. Features ======== Monadic interface. Portable: backends for SQLite and PostgreSQL. Generic: easy integration with your existing Haskell types. Creating, dropping and querying tables using type-safe database schemas. Typed query language with products, filtering, joins and aggregation. Inserting, updating and deleting rows from tables. Conditional insert/update. Transactions, uniqueness constraints and foreign keys. Type-safe, backend-specific functionality, such as JSON lookups. Seamless prepared statements. Lightweight and modular: few dependencies, and non-essential features are optional or split into add-on packages. Getting started =============== Install the selda package from Hackage, as well as at least one of the backends: $ cabal update $ cabal install selda selda-sqlite selda-postgresql Then, read the tutorial. The API documentation will probably also come in handy. Requirements ============ Selda requires GHC 8.0+, as well as SQLite 3.7.11+ or PostgreSQL 9.4+. To build the SQLite backend, you need a C compiler installed. To build the PostgreSQL backend, you need the libpq development libraries installed ( libpq-dev on Debian-based Linux distributions). Hacking ======= Contributing ------------ All forms of contributions are welcome! If you have a bug to report, please try to include as much information as pos","default_branch":null,"files":null,"tree":[],"storefront":"/r/valderman","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/valderman/selda/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}