How to use PostgreSQL with Haskell. 8-9 library reviews

As of October 2023, there are around a dozen mature PostgreSQL libraries, all levels of abstractions, from low-level queries to the type level. More than enough for anybody.

Foreach library, we’ll talk about features, basics like writing queries, complexity, pitfalls, (everyone’s favorite topic) errors, and so on.


Thanks for this great contribution to the community!


wow, this is an amazing job! congrats!


Great initiative ! :clap:


Great work! As a rel8 author, I’m happy to see that everything you’ve written is what I would call canonical usage, and I think you for doing a good job in portraying how the library is intended to be used!


This is really awesome resource!
Thanks for taking the time and providing both runnable code examples as well as video explanations.

[postgresql-simple] has a companion postgresql-simple-migration library which has been archived since 2021 …

We recently switched to a maintained fork of this library: postgresql-migration: PostgreSQL Schema Migrations

Thanks, I didn’t know about it, I’ll add links to it

@ocharles, would you mind taking a look at Opaleye and Rel8 left joins · Issue #1 · Zelenya/elephants · GitHub? I think the Opaleye and Rel8 left join examples need to be fixed, and if so we should probably try to improve the documentation …


Thanks a lot for your time spent on this !

I’m trying to build a small web project as an exercise. As I’m learning Haskell for the last 6 months, this kind of content is invaluable as you can get quickly lost in the myriad of ways to do things :sweat_smile:

The content is clear, concise and really gives a great point of comparison for beginning to use those libraries.
At least it helped me pick one ! :+1: