Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression. Learn more →
Top 7 Haskell SQL Projects
-
The OP didn't write about a UI and we don't know what their needs are, so for all we know they're writing a Python-based back-end API in REST or GraphQL which is being consumed by a mobile UI or a SPA UI in Reactor or Vue.js or whatever, such that that back-end API doesn't have to provide a UI. If the existing Python back-end doesn't provide a UI then any proposed substitute--including one in SQL--shouldn't have to provide a UI either, just an API. In that case, there are some ready-made solutions already available:
- PostgREST (https://postgrest.org/): REST API for PostgreSQL
-
One anecdotal opinion from a rando reddit user: I prefer beam despite the boilerplate and more complex types because of the authors make a serious attempt at sql-standards compliance: https://github.com/haskell-beam/beam
-
SonarLint
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.
-
-
You may want to have a look at squeal that someone mentioned the other day in the comments of this post.
-
I also mention https://github.com/circuithub/rel8 on posts like these since I think it should be more well-known.
-
codd
Codd helps to apply plain postgres SQL migrations with strong cross-environment consistency checks and atomicity guarantees (by mzabani)
Project mention: Announcing codd - a tool to apply postgres SQL migrations | /r/haskell | 2023-03-03Some possible upsides of codd: - No need to manually write verification SQL. Codd will update schema representation files when you codd add some-migration.sql and will compare those to the actual schema when deploying (I'd say in ways which would be very hard to replicate manually, see an example of what codd checks, giving you the option to rollback if they don't match or proceed but log non-matching db objects. - It seems to be much simpler to set codd up. You need 3 env vars to start, a folder to store your migrations and a self-contained statically linked executable. Just codd add migration.sql your way in after that - This might be very wrong as I couldn't find it explicitly documented, but this GH issue suggests it's not so simple to apply all pending migrations in a single transaction with Sqitch? Maybe it requires some bundling or something along those lines and then it's fine, though. In any case, codd will do this automatically when you run codd up (provided postgresql allows it).
-
-
InfluxDB
Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
Haskell SQL related posts
- Choosing the right abstraction level for SQLite library.
- Announcing codd - a tool to apply postgres SQL migrations
- What's your favorite Database EDSL/library in Haskell?
- [ANN] Generic-Persistence 0.3.0 released
- Show HN: Rest – Instant RESTful API on Any SQL Database
- Writing a simple Haskell Persistence layer using Generics and Reflection
- Architecture Pitfalls: Don’t use your ORM entities for everything — embrace the SQL!
-
A note from our sponsor - InfluxDB
www.influxdata.com | 8 Jun 2023
Index
What are some of the best open-source SQL projects in Haskell? This list will help you:
Project | Stars | |
---|---|---|
1 | postgrest | 20,634 |
2 | beam | 552 |
3 | selda | 469 |
4 | squeal-postgresql | 342 |
5 | rel8 | 129 |
6 | codd | 34 |
7 | sql-simple-mysql | 1 |