{"repo":"tchoutri/pg-entity","free":true,"listed":false,"github":"https://github.com/tchoutri/pg-entity","clone":"git clone https://github.com/tchoutri/pg-entity.git","description":"A pleasant PostgreSQL database layer for Haskell","language":"Haskell","stars":42,"topics":["haskell","postgresql","database-layer","simple-haskell","sql"],"license":"MIT","category":"databases-storage","readme_excerpt":"pg-entity This library is a pleasant layer on top of [postgresql-simple][pg-simple] to safely expand the fields of a table when writing SQL queries. It aims to be a convenient middle-ground between rigid ORMs and hand-rolled SQL query strings. Here is its philosophy: The serialisation/deserialisation part is left to the consumer, so you have to go with your own FromRow/ToRow instances. You are encouraged to adopt data types in your application that model your business domain, rather than restrict yourself within the limits of what an SQL schema can represent. Use an intermediate Data Access Object (DAO) that can easily be serialised and deserialised to and from a SQL schema, to and from which you will morph your business data-types. Illegal states are made harder (but not impossible) to represent. Generic deriving of entities is encouraged, and quasi-quoters are provided to denote fields in a safer way. Escape hatches are provided at every level. The types that are manipulated are Query for which an IsString instance exists. Don't force yourself to use the higher-level API if the lower-level combinators work for you, and if those don't either, “Just Write SQL”™. Its dependency footprint is optimised for my own setups, and as such it makes use of [text][text], [vector][vector] and [pg-transact][pg-transact]. Table of Contents ================= Documentation Escape hatches Acknowledgements Documentation [Tutorial][docs-url] This library aims to be thoroughly tested, by the mean","default_branch":null,"files":null,"tree":[],"storefront":"/r/tchoutri","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/tchoutri/pg-entity/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."}