Slick VS postgrest

Compare Slick vs postgrest and see what are their differences.

Slick

Slick (Scala Language Integrated Connection Kit) is a modern database query and access library for Scala (by slick)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
Slick postgrest
17 100
2,637 22,282
0.2% 1.9%
8.7 9.7
8 days ago 2 days ago
Scala Haskell
BSD 2-clause "Simplified" License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Slick

Posts with mentions or reviews of Slick. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-12.
  • How many people/companies are fully on Scala 3?
    4 projects | /r/scala | 12 Jul 2023
  • First Slick prerelease for Scala 3!
    2 projects | /r/scala | 9 Jul 2023
    Made a PR on slick to document this https://github.com/slick/slick/pull/2760 (workaround is quite easy, you can just define def tupled = (apply _).tupled in the companion object of the case class and it will also compile for all Scala versions).
  • Sketch of a Post-ORM
    14 projects | news.ycombinator.com | 2 Jun 2023
    The Scala ecosystem has a few ways to do composable type-safe query building, e.g. Slick[0] or more recently Quill[1]. . I believe both also have ways to do compile-time string interpolation (e.g. sql"""select * from users where id = ${user.id}""") which generate prepared statements (I know Slick does prepared statements. Quill has similar macros but I haven't looked into how safe they are to use).

    [0] https://scala-slick.org/

  • Slick 3.5.0-M3 has been released
    1 project | /r/scala | 30 Apr 2023
    Release notes at https://github.com/slick/slick/releases/tag/v3.5.0-M3
  • Database abstraction library which allows a clean domain model
    2 projects | /r/scala | 20 Jan 2023
    With all this in mind, I landed at the first candidate: slick from https://scala-slick.org/ that you all probably know.
  • Scala 3 migration: 7 benefits that outweigh the risks
    2 projects | /r/scala | 3 Nov 2022
    I think Slick's current priority is also getting in Scala 3 support: https://github.com/slick/slick/issues/2177
  • Slick 3.4.x is here!
    3 projects | /r/scala | 18 Sep 2022
    Future releases might not be announced here. To get notified, go to https://github.com/slick/slick, click the Watch dropdown button at the top, select Custom, check Releases, and click Apply.
  • Is there any good resource for learning Slick (3.x)?
    2 projects | /r/scala | 2 Sep 2022
    https://github.com/slick/slick/pull/2097 now I use slightly lower version of slick so this might be an upgrade that resolves (I do recall using it in 21 and it was still buggy and I filed a ticket, which I cannot find at the moment), but given a complex enough query (we have one in PROD which has tons of flexibility in terms of filters that can be passed in) but it also makes for complex code.
  • Slick 3.4.0 is imminent
    2 projects | /r/scala | 16 Aug 2022
    I started writing a reply but then I realized it would be long and depends on exactly what you mean, so maybe it's better to post the question in https://github.com/slick/slick/discussions/categories/questions?
  • Scala: A Love Story
    4 projects | dev.to | 21 Apr 2021
    I purchased the very entertaining book Seven Languages in Seven Weeks. Although I found Haskell fascinating and tempting, I knew it was unrealistic to introduce it in our company. Scala on the other hand looked like it could be the holy grail: All the characteristics I was looking for, no need to abandon the JVM and its cornucopia of tools and libraries, and the possibility for coexistence with Java and therefore incremental adoption. After implementing some simple programs to identify any immediate risks of committing to the language and its ecosystem, I started to introduce Scala in customer projects. Luckily, I was fortunate enough to work with open-minded, curious, and ambitious team members who were also experienced enough to appreciate the benefits of the language. We immediately applied our experience with functional programming, and embraced immutability. Libraries like Slick and Akka HTTP (we actually started out with its predecessor, Spray) made building database-backed REST services a breeze. And the resulting code was robust and highly maintainable. Scala's expressive type system and type inference made it easy to build a restrictive, consistent domain model without bloating the code. There was virtually no overhead. Any boilerplate could be easily abstracted out. In the end, the application code felt natural, concise and elegant. Programming was fun again.

postgrest

Posts with mentions or reviews of postgrest. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-15.
  • Supabase – General Availability Week
    7 projects | news.ycombinator.com | 15 Apr 2024
    hey hn, supabase ceo her

    we just announced GA, after ~4 years of beta. for those who don't know: supabase is a postgres hosting company. we also host other open source "backend" tools that make it easy to get started with postgres (tools like PostgREST for auto-generate APIs [0])

    we owe a lot to the HN community. you launched us 4 years ago [1], when we were just a few developers. since then HN has been a staple in our journey, one of the best sources of product feedback [2]

    the GA badge is mostly to signify organizational readiness. we're at a stage where we can take any profile of customer. we have a support team that works 24/7, and a success team that will help customers improve their postgres usage. we released our Index Advisor [3] yesterday, and we'll be releasing a few more products this week that helps customer with performance and security.

    on a personal note: i read HN most days, and love going through the ShowHN's to see what devs are building. thanks for being an awesome community and my favorite place to lurk on the internet. i'll stick around to answer any questions

    [0] PostgREST: https://postgrest.org

    [1] Launch: https://news.ycombinator.com/item?id=23319901

    [2] HN journey: https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...

    [3] Index Advisor: https://news.ycombinator.com/item?id=40028111

  • The Many Ways Not to Build an API
    4 projects | dev.to | 1 Apr 2024
    If you use PostgreSQL and are proficient with using its row-level security feature, you can choose from several tools/services built above RLS, including Supabase, PostgREST, and PostGraphile. They all provide a way to expose database CRUD as a web API, assuming you've configured the RLS rules to properly secure the access.
  • Soul: A SQLite REST and Realtime Server
    8 projects | news.ycombinator.com | 19 Mar 2024
  • Build a simple project management app with Neon, PostgREST, and DigitalOcean
    3 projects | dev.to | 27 Feb 2024
    wget 'https://github.com/PostgREST/postgrest/releases/download/v11.2.0/postgrest-v11.2.0-linux-static-x64.tar.xz'
  • Single Software Developer Projects
    1 project | dev.to | 24 Feb 2024
    SupaBase is entirely based upon PostgREST. In fact, PostgREST is arguably 49% of their value proposition according to their own website. The other 49% is PostgreSQL. PostgreSQL of course is a super mature database, and some would argue the best RDBMS on the planet, so let's ignore that part for a moment, and consider it a mature thing and move on to PostgREST.
  • Oink: An API for PHP in a single file
    6 projects | news.ycombinator.com | 13 Feb 2024
    You don't need this PHP snippet:

    To get the same functionality without the extra step, simply use PostgREST [1]

    [1] https://postgrest.org/

  • Ask HN: Popular open source tool originally written in Haskell?
    3 projects | news.ycombinator.com | 10 Feb 2024
  • Use PostgREST and HTMX to Build RESTful APIs from PostgreSQL Databases
    4 projects | dev.to | 5 Feb 2024
    PostgREST is a standalone web server that turns your PostgreSQL database into a RESTful API using the database's structural constraints and permissions to define the API's endpoints and operations. In this tutorial, you will create a simple note-taking app by leveraging PostgREST to construct a RESTful API for the app and using htmx to deliver HTML content.
  • We built our customer data warehouse all on Postgres
    16 projects | news.ycombinator.com | 2 Feb 2024
    You might find some info in the docs of PostgREST [1] or in the previous discussions on HN about it [2].

    For the versioning, I just have a git repo where I keep every role, schema, table, view, function, trigger, etc. definitions. Every time I change something in the database I first change it in the git repo too to have an history.

    [1] https://postgrest.org

    [2] https://hn.algolia.com/?q=postgrest

  • Pandoc
    17 projects | news.ycombinator.com | 28 Jan 2024
    Don't know if you would call this a "program" but PostgREST is written is Haskell too.

    https://github.com/PostgREST/postgrest

What are some alternatives?

When comparing Slick and postgrest you can also consider the following projects:

doobie - Functional JDBC layer for Scala.

Hasura - Blazing fast, instant realtime GraphQL APIs on your DB with fine grained access control, also trigger webhooks on database events.

Quill - Compile-time Language Integrated Queries for Scala

supabase - The open source Firebase alternative.

ScalikeJDBC - A tidy SQL-based DB access library for Scala developers. This library naturally wraps JDBC APIs and provides you easy-to-use APIs.

postgres-websockets - PostgreSQL + Websockets

Squeryl - A Scala DSL for talking with databases with minimum verbosity and maximum type safety

Appwrite - Build like a team of hundreds_

Clickhouse-scala-client - Clickhouse Scala Client with Reactive Streams support

gotrue - An SWT based API for managing users and issuing SWT tokens.

Sorm - A functional boilerplate-free Scala ORM

TimescaleDB - An open-source time-series SQL database optimized for fast ingest and complex queries. Packaged as a PostgreSQL extension.